head-img Force's Blog

laravel orm中使用 sum() 与 substr() 组合情况下,substr()内参数被替换解决办法

PHP,Database

查询中涉及到sum()函数和substr函数组合

sum( SUBSTR( xxx,3,1 ) = 5 OR SUBSTR( xxx,3,1 ) = 6 )  as sum,

运行后结果不正确,打印sql发现substr内参数被替换为:

sum( SUBSTR( xxx,1 ) = 5 OR SUBSTR( xxx,1 ) = 6 )  as sum,

解决办法,将substr中,分割使用表述语法代替:

sum( SUBSTR( xxx FROM 3 FOR 1 ) = 5 OR SUBSTR( xxx FROM 3 FOR 1 ) = 6 )  as sum,

再次运行,结果达到预期

点我评论
打赏本文
二维码


128

文章

14

标签

 访客统计  Update-******