我有3個順序排定表MySQL的:選擇數據從多個表
Orders1
:
OrderNumber, TransactionID, TrackingNumber
Orders2
:
OrderNumber, TransactionID, TrackingNumber
Orders3
:
OrderNumber, TransactionID, TrackingNumber
我的訂單顯示的總數不完整,所以我需要從哪裏TrackingNumber = ''
我有3個順序排定表MySQL的:選擇數據從多個表
Orders1
:
OrderNumber, TransactionID, TrackingNumber
Orders2
:
OrderNumber, TransactionID, TrackingNumber
Orders3
:
OrderNumber, TransactionID, TrackingNumber
我的訂單顯示的總數不完整,所以我需要從哪裏TrackingNumber = ''
您需要使用UNION
表中進行選擇:
SELECT * FROM orders1 WHERE TrackingNumber = ''
UNION
SELECT * FROM orders2 WHERE TrackingNumber = ''
UNION
SELECT * FROM orders3 WHERE TrackingNumber = ''
下面是一個使用子查詢的方法。
SELECT
(SELECT COUNT(*) FROM Orders1 WHERE TrackingNumber='')
+ (SELECT COUNT(*) FROM Orders2 WHERE TrackingNumber='')
+ (SELECT COUNT(*) FROM Orders3 WHERE TrackingNumber='')
AS `total`
FROM DUAL;
告訴我,如果它按預期工作:)
值得一說的是,你應該指數TrackingNumber
領域。
試試這個:
select
sum(a.subtotal)
from
(select count(*) as subtotal from Orders1 where TrackingNumber=''
union all
select count(*) as subtotal from Orders2 where TrackingNumber=''
union all
select count(*) as subtotal from Orders3 where TrackingNumber=''
) a
你可以使用MySQL連接 – 2014-11-03 15:36:49
究竟如何是與這些表?例如,是否可以通過相同的OrderNumber標識Orders1和Orders2行? – 2014-11-03 15:42:59
他們沒有任何共同的結構。我們有來自3個不同來源的訂單,並存儲在不同的地方。一個是eBay,另一個就是亞馬遜。訂單號碼對錶格是唯一的。 – user4210292 2014-11-03 15:46:58