int 被當作模糊查詢

devin_feng發表於2021-08-26

##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

:joy: :joy: :joy:路過的大佬指點下

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章