我使用了我的一個實體的FormType,並建立一個entity field。 我需要兩個Where子句中的同時,從我讀過關於the Query Builder page,至少這是我應該如何去了解它:Symfony2的學說Expr的「IS NOT NULL」
'query_builder' => function ($er){
$qb = $er->createQueryBuilder('p');
$qb
->where($qb->expr()->andx(
$qb->expr()->in('p', '?1'),
$qb->expr()->not(
$qb->expr()->eq('p.location', 'NULL')
)
))
->setParameter(1, $this->totalScope)
;
return $qb;
},
然而,not(eq('col', 'NULL'))
沒有達到預期的效果(而事實上,有錯誤「錯誤:預期文字,得到了‘NULL’」
對於瞭解SQL可能主觀上是人少** **難看,但其也少** **便攜,而表情路抽象數據庫層完全程。我個人總是使用表達式。 –
@MarcelBurkhard的isNotNull方法:'公共職能isNotNull($ X){回報$ X。 '不是NULL'; }' – keyboardSmasher
此外,'IS NOT NULL'是DQL ** **不SQL,使其**就像便攜式**,而且**不太難看**。 :) – keyboardSmasher