3
我想同時查詢兩個表(幾乎)相同的行。其結果是,我想要得到的5個最近條目(按日期排序,在總),無論從哪個表他們從MYSQL:聯合查詢2表很慢,如何提高?
到目前爲止,我嘗試這樣做:
SELECT date, name, text FROM `table_A`
UNION
SELECT date, name, text FROM `table_B` ORDER BY date desc LIMIT 5
不幸的是,這查詢大約需要20秒(兩個表都有〜300.000行)。
當我只是做:
SELECT date, name, text FROM `table_A` ORDER BY date desc LIMIT 5
或
SELECT date, name, text FROM `table_B` ORDER BY date desc LIMIT 5
查詢只需幾毫秒。
所以我的問題是:我該如何改進我的查詢更快或選擇查詢應該用什麼來從兩個表中獲取5個最新的行?
嘿,謝謝,但這給了我錯誤#1248:每個派生表都必須有自己的別名。有什麼建議麼? – knzo
我已添加缺少的別名 – Barmar