在SELECT
中使用SELECT
以減少查詢次數是很常見的;但正如我檢查這導致查詢緩慢(這顯然是有害的MySQL性能)。我有一個簡單的查詢,如在mysql查詢的SELECT中使用SELECT
SELECT something
FROM posts
WHERE id IN (
SELECT tag_map.id
FROM tag_map
INNER JOIN tags
ON tags.tag_id=tag_map.tag_id
WHERE tag IN ('tag1', 'tag2', 'tag3', 'tag4', 'tag5', 'tag6')
)
這導致慢的查詢「查詢時間3-4s;鎖定約0.000090s時間;具有約200行檢查」。
如果我拆分SELECT
查詢,它們中的每一個都會很快;但是這會增加高併發性不佳的查詢數量。
這是通常的情況,還是我的代碼有問題?
''SELECT'內SELECT'?這就像那部電影... Inselection。 – 2011-12-21 05:53:27