首页 > Web开发 > 详细

thinkphp中if使用以及concat的使用实例

时间:2021-02-03 18:09:29      阅读:32      评论:0      收藏:0      [点我收藏+]
thinkphp中联合if和concat的使用方法
"IF (pp.reason_name != ‘‘,concat( pp.reason_name, if(pp.remark != ‘‘,‘,‘,‘‘), pp.remark  ),‘‘ ) " => ‘remark‘
 if使用方法  IF(expr1,expr2,expr3)
如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则返回值则为 expr3。IF()的返回值为数字值或字符串值,具体情况视其所在语境而定。
"IF (pp.reason_name != ‘‘,‘显示表达式‘ ,‘‘)" => ‘使用别名‘

concat使用方法
CONCAT()函数用于将多个字符串连接成一个字符串
例子

mysql> SELECT CONCAT(’My’, ‘S’, ‘QL’);

-> ‘MySQL’

concat( pp.reason_name, if(pp.remark != ‘‘,‘,‘,‘‘), pp.remark  )
查询sql语句
Db::name(‘spu_info‘)->alias(‘pi‘)
            ->leftJoin(‘spu p‘, ‘p.spu = pi.spu‘)
            ->leftJoin(‘sku k‘, ‘k.spu = pi.spu‘)
            ->leftJoin(‘supplier s‘, ‘s.id = k.supplier_id‘)
            ->leftJoin(‘product_process pp‘, ‘pp.id = p.process_id and pp.spu = p.spu‘)
            ->LeftJoin(‘spu_sub ss‘, ‘ss.spu = pi.spu‘)
->field([ "IF (pp.reason_name != ‘‘,concat( pp.reason_name, if(pp.remark != ‘‘,‘,‘,‘‘), pp.remark ),‘‘ ) " => ‘remark‘, ‘pi.count‘, ‘pi.is_copy‘])->group(‘pi.spu‘) ->paginate( $pagesize, false, [‘query‘ => Request::param()] )->toArray();

连接if 与concat使用实例

thinkphp中if使用以及concat的使用实例

原文:https://www.cnblogs.com/kevin-yang123/p/14366828.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!