1. 程式人生 > >記一次sql查詢慢的坑(存在查詢條件隱式轉換)

記一次sql查詢慢的坑(存在查詢條件隱式轉換)

今天在做功能的時候。很慢 sql語句 也正常啊,沒毛病

原sql  我貼一下

SELECT * FROM `goods` WHERE `sku` = 12454207 LIMIT 1;

檢視執行時間是30多秒  起初猜測是 索引問題 後面發現建立啦,

 

最後我找到原因了,我先檢視這個sku欄位的型別 發現是varchar

上圖中的值 是int型別  

於是 我就想到 會不會是隱式轉化造成的,那我就改了一下程式碼

$sku = (string)$jd_result['skuId'];

這樣強轉一下,果然現在查詢是毫秒級別的啦。所以大家平時開發的時候也要注意。防止這種情況發生。