私のクエリでは、カンマ区切りのIDを持つすべてのレコードを以下で見つけなければなりません。 MySQL INオペレータ代替
2,20,44,66,68,85,90,101,102,103,125,168
は、だから私は、タスク
SELECT item_id,
item_name
FROM `items`
WHERE `item_id` IN (2, 20, 44, 66,
68, 85, 90, 101,
102, 103, 125, 168)
については、以下のクエリを書いたしかし、問題はカンマがIDリストを離れたときに大きくなる大きなクエリの実行時間があるということです。私の仕事を達成する他の方法はありますか?
DESCRIBEテーブルクエリ後のMy Table構造体は以下のとおりです。確認してください
Field Type Null Key Default Extra
asheet_id int(11) unsigned NO PRI NULL auto_increment
asheet_staff_id int(11) unsigned NO NULL
asheet_exam_number int(11) NO NULL
正しいインデックスは問題を解決します(おそらく) – baao
item_idは主キーですか? - そうでない場合:ALTER TABLE 'items' ADD INDEX item_id_index(' item_id') – num8er
もっと良い方法がありますか? item_idのインデックスを作成してパフォーマンスを改善する – Laazo