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

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

原sql  我貼一下

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

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

 

最後我找到原因了,我先查看這個sku字段的類型 發現是varchar

上圖中的值 是int類型  

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

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

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章