我有一个简短的问题。
以下TYPO3的API概述中没有描述如何在where()子句中使用“ BINARY”:https://docs.typo3.org/m/typo3/reference-coreapi/master/en-us/ApiOverview/Database/QueryBuilder/Index.html#expr
我想实现什么?这个:
WEHRE BINARY `buyer_code` = "f#F67d";
实际上我只能执行以下操作:
->where(
$queryBuilder->expr()->eq('buyer_code', 'f#F67d')
);
但是在这种情况下,我无法获得令人满意的结果,因为在这里我需要区分大小写:-)
存在另一个Buyer_code“ f#F67 D ”(最后一个字符为大写),但我确实需要寻找另一个。
感谢您的帮助。
答案 0 :(得分:0)
由于TYPO3在此处使用Doctrine API,您可以尝试这样做
->where('BINARY `buyer_code` = ' . $queryBuilder->createNamedParameter('f#F67d'))
请记住,此查询现在仅适用于支持BINARY关键字的数据库后端!
答案 1 :(得分:0)
请查看Doctrine2 case-sensitive query线程较旧,但似乎涵盖了您的问题的背景和解决方案。