嗨即時嘗試合併兩個表。mysql union to not working
我有ids,只存在於左表中,我有隻存在於右表中的ids。我想得到所有ID的一張桌子。我想:
select * from temp_hours as a
left outer join temp_orders as o on a.proj_id = o.proj_id
union
select * from temp_hours as a
right outer join temp_orders as o on a.proj_id = o.proj_id
,但我得到的錯誤:
Can't reopen table: 'a'
任何想法如何,我可以做到這一點?服務器版本:5.0.51a-24 + lenny4(Debian的)
嘗試把兩個SQL查詢中'()'。比如'(query1)union(query2)' – Sumant
或者在第二個select中使用不同的別名。 – symcbean
不知道這是否有助於你的情況,我意識到這是非常古老的,但也許這會幫助其他人,因爲它對我有用。 Union默認使用DISTINCT。如果工會提取相同的信息,它將自動僅顯示新的DISTINCT信息。我不得不爲每個選擇添加一些獨特的內容,以使其正確顯示。 SELECT列,1 FROM ... UNION SELECT列,2 FROM ...更多信息:http://forums.mysql.com/read.php?10,220906,220926#msg-220926 – nwolybug