我需要
我需要排序别名。
symfony代码
$qb->addSelect("(CASE WHEN (priority LIKE '%High%') THEN 1
WHEN (priority LIKE '%Medium%') THEN 2
ELSE 3 END) AS prioritys ");
排序代码
priority column name of view/table.
prioritys is alias.
$qb->orderBy('priority','ASC'); //works because here im accessing column from table/view.
$qb->orderBy('prioritys','ASC'); //doesnot works.
使用别名错误
错误:[语义错误]行0,列173在“优先级ASC”附近,:错误:未定义“优先级”。
任何建议都是最欢迎的。
答案 0 :(得分:0)
$qb->orderBy('prioritys','ASC'); // it should work, check symfony2 doc.
根据主要数据库,我们可以在order by子句中使用列别名。因此,请检查您的前端。
如果不支持,则在CASE表达式中按如下所示的子句使用
ORDER BY CASE WHEN priority LIKE '%High%' THEN 1 WHEN priority LIKE '%Medium%' THEN 2 ELSE 3 END