You can achieve something like that with a detached criteria and a subquery (as long as you only want to filter on SubCategoryTranslation and not fetch them).
Code:
DetachtedCriteria det =
DetachedCriteria.For(typeof(SubCategoryTranslation ), "sct")
.Add( Expression.EqProperty( "sct.SubCategoryId", "subcategory.Id" ) );
det.Add(Expression.Eq(...
and then add this detached criteria as a subquery to your first criteria:
Code:
criteria.Add( Subqueries.Exists(
det.SetProjection( Projections.Property( "Id" ) ) ) );