int 被当作模糊查询
##int参数被模糊查询
今天遇到个奇怪的事情,我一条sql在laravel里执行结果和工具里不一致。
$where = [
'prds.ptnCode'=>$data['ptnCode'],
'prds.shopCode'=>$data['shopCode'],
'prd_items.status'=>1,
'prd_items.skuCode' => $k
];
// 获取商品
$skuList = PrdItem::join('prds', 'prd_items.prd_id', '=', 'prds.id')
->where($where)
->whereNull('prd_items.deleted_at')
->whereNull('prds.deleted_at')
->select(['prd_items.*','prds.title'])
->first();
框架里结果为5条记录,工具里只有1条。
skuCode参数为:4960685891101;
laravel里出来的结果包含了所有 这个skuCode模糊查询的结果。
最后把该值强制转为string后结果正确。
'prd_items.code' => (string)$k
也不知道是啥原因,网上找了好久没找到原因。
数据库字段类型是varchar
路过的大佬指点下
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: