脚本宝典收集整理的这篇文章主要介绍了cakephp – Cake PHP复杂查找’OR’与null和空字符串无法正常工作,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
$condITions = array( 'Person.id' => array(2,4,1,23,45,11),'OR' => array( array( array('NOT' => array('Person.image' => null)),array('NOT' => array('Person.image' => '')),),array( array('NOT' => array('Person.photos' => null)),array('NOT' => array('Person.photos' => '')),) ) );
SELECT `Person`.`id`,`Person`.`created`,`Person`.`modified` From `people` AS `Person` WHERE `Person`.`id` IN (2,11) AND ((((NOT (`Person`.`image` IS NULL)) AND (NOT (`Person`.`image` = NULL)))) OR (((NOT (`Person`.`photos` IS NULL)) AND (NOT (`Person`.`photos` = ''))))) ORDER BY FIELD(`Person`.`id`,2,11) ASC LIMIT 3
在蛋糕条件数组中,我给Person.image不为null或”,但相应的cake sql输出为(NOT(Person.image IS NULL))AND(NOT(Person.image = NULL))它应该像(NOT(Person.image IS NULL))AND(NOT(Person.image =”)).
这里Person.image都与NULL本身进行比较(IS NULL和= NULL),其中Person.image = NULL想与像Person.image =”这样的空字符串进行比较.
这里’Person.image’是’INT’而’Person.photos’是’VArchAR’类型,但很难从当前阶段改变类型.
如何纠正?
$conditions = array( 'Person.id' => array(2,array('NOT' => array('Person.image = "" ')),array('NOT' => array('Person.photos = "" ')),) ) );
以上是脚本宝典为你收集整理的cakephp – Cake PHP复杂查找’OR’与null和空字符串无法正常工作全部内容,希望文章能够帮你解决cakephp – Cake PHP复杂查找’OR’与null和空字符串无法正常工作所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。