thinkphp实现某字段的批量查询

批量查询条件:
按订单号,输入数据用换行隔开,如
982669059853889013
982653954214187509

1、根据换行符将前端传递的字符串转成数组
2、根据模糊查询组装查询条件

查询sql
SELECT
*
FROM
rht_medicine_order
WHERE
order_sn LIKE ‘%001111%’
OR order_sn LIKE ‘%202003041713%’
OR order_sn LIKE ‘%202003041714%’

//接收前端传递值
 $order_sn_batch = $this->request->param('order_sn_batch') ?? '';
 //根据换行符 将字符串转数组 
//select * from rht_medicine_order where order_sn LIKE '%202003041611%' or order_sn LIKE '%202003041613%';
 $arr_order_sn = explode(PHP_EOL,$order_sn_batch);
//$arr_order_sn = str_replace(PHP_EOL, ',', $order_sn_batch);

$where_Sn = [];
        if($arr_order_sn[0]){
            foreach ($arr_order_sn as $value){
                $where_Sn[] = array('order_sn','like','%'.$value.'%');  //`order_sn` like '.'%'.$value.'%'.' or ';
            }
$data = Db::table($this->table)
            ->whereOr($where_Sn)
            ->select();

在这里插入图片描述思路参考文档:https://blog.csdn.net/supramolecular/article/details/84778295

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值