Mysql——FIN_IN_SET 和 IN 對比
阿新 • • 發佈:2019-01-01
FIND_IN_SET函式用來比較是不是包含
mysql中In是比較等不等
執行的解釋,可以看到還是使用了主鍵索引的 執行時間為:0.014s
同樣使用了主鍵索引 總共耗時0.001s,相對FIND_IN_SET使用的時間還是大大減少了的。怪不得,在兩者都可實現的情況之下,大家都不建議使用前者。
使用實際的例子,對比兩者之間效能的
FIND_IN_SET
UPDATE project
SET Available = 1
WHERE
FIND_IN_SET(
ID ,'001e678a-b0af-482a-aa41-f4490de7c412,002a62ee-ab92-4cbe-89bc-0d759a027f80,00b3ab99-7a5f-422f-830f-63c36fd5ac16,00c050c3-ccda-418c-acac-e8965dc8f29b')
執行的解釋,可以看到還是使用了主鍵索引的 執行時間為:0.014s
IN
UPDATE project
SET Available = 0
WHERE
ID IN (
'001e678a-b0af-482a-aa41-f4490de7c412',
'002a62ee-ab92-4cbe-89bc-0d759a027f80',
'00b3ab99-7a5f-422f-830f-63c36fd5ac16',
'00c050c3-ccda-418c-acac-e8965dc8f29b'
)
同樣使用了主鍵索引 總共耗時0.001s,相對FIND_IN_SET使用的時間還是大大減少了的。怪不得,在兩者都可實現的情況之下,大家都不建議使用前者。