2016-08-18 40 views
1

選擇有限行因此,這是相當普遍的知識來選擇多個錶行並互相疊放結果:從多個表

SELECT * FROM table1 
UNION 
SELECT * FROM table2 
UNION 
... 

不過,如果我想從行的數量有限每張桌子上,那我該怎麼寫呢?

SELECT * FROM table1 LIMIT 2 
UNION 
SELECT * FROM table2 LIMIT 2 
UNION 
... 

顯然不起作用。

請注意,在我的情況下,我有51個表,所有的列都相同。

回答

2

可能以這種方式工作

(SELECT * FROM table1 LIMIT 2 ) 
UNION 
(SELECT * FROM table2 LIMIT 2) 
UNION 
... 
+0

就這樣?只要把括號放在它們上面?哈哈哈!我像過去幾個小時一樣花費精力尋找解決方案!謝謝! – Kartik

+1

使用()包裝查詢,您強制rdbms考慮結果,而不是僅查詢查詢..本身..在此wya中,您是union的resutl而不是查詢。 – scaisEdge

+0

謝謝。我不知道查詢和結果之間存在這樣的分離。但考慮關係數據庫管理系統是如何工作的,這確實是有道理的。 – Kartik