如何表达其中的 where 子句:
select * from TABLE where LENGTH(COLUMN) > 0
在 xPDO 中?
$criteria->where(array('LENGTH(customer_po_num):>' => '0'));
不起作用,它会产生如下结果:
`InventoryData`.`LENGTH(customer_po_num)` > '0'
最佳答案
对于不受支持的 SQL 运算符,您通常可以将条件作为字符串而不是数组包含在查询中:
$criteria->where('LENGTH(customer_po_num) > 0');
编辑:下面提供的工作示例
$c = $modx->newQuery('modResource');
$c->where('LENGTH(pagetitle) > 0');
$c->select('pagetitle');
$c->prepare();
print_r($c->toSql());
返回以下(工作)SQL:
SELECT `pagetitle`
FROM `ovo_site_content`
AS `modResource`
WHERE LENGTH(pagetitle) > 0
它有效。
关于mysql - 如何将 SQL where LENGTH() 条件转换为 xPDO?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26692290/