我有一張表格,其中有大量文本數據的列。 10行查詢(表只有31條記錄)需要20秒以上。如果我刪除大尺寸的字段,查詢會很快執行。 1行查詢(通過id)總是快速執行。查詢具有大列大小的表格
我該如何做許多行的查詢工作更快?
查詢看起來像這樣
SELECT DISTINCT (a.id), a.field_1, a.field_2, a.field_3
, a.field_4, a.field_5, a.filed_6, ...
FROM table_a a, table_b b
WHERE a.field_8 = 'o'
ORDER BY a.field_2 DESC
LIMIT 10;
'DISTINCT'是** **沒有的功能。您正在使用的語法不會在ID列上顯示,而是顯示在所有列上! – 2012-03-27 14:22:21
@a_horse_with_no_name,是的,你是對的!現在它更快,但不是我們想要的那麼快。也許還有別的東西? – 2012-03-27 14:57:21
沒有查詢計劃的性能分析主要是猜測,請在糾正DISTINCT ON後在查詢上張貼EXPLAIN ANALYZE的輸出 – dbenhur 2012-03-27 17:00:02