7
基本的に私が何をしたいのかSQLのこの作品を書くことです:QueryOver流暢NHibernateはQueryOver SQL「CASE」と同等
基本的に私が何をしたいのかSQLのこの作品を書くことです:QueryOver流暢NHibernateはQueryOver SQL「CASE」と同等
で
SELECT
CASE
WHEN t.type = 'a' THEN
t.name
ELSE
t.otherName
END
as "Name"
FROM myTable t
は多分可能、いくつかのよりよい構文がありますが、これは行う必要があります
var result = session.QueryOver<MyEntity>()
.Select(Projections.Alias(
Projections.Conditional(Restrictions.Eq("type", 'a'),
Projections.Property(t => t.name),
Projections.Property(t => t.othername)),
"Name"
)
.List();