我有3個表,並希望從2個表中獲取數據並將其轉儲到第三個表。這兩個表格可以具有相互關聯的數據和獨立數據。所以,我想要得到所有3種可能場景的結合。在MySQL中嵌套的聯合聲明
的3個不同的表是a,b和c
示例查詢:
Insert into c (scode, cname, fvalue, ISIN, nsymbol, paidup)
select scode, cname, fvalue, ISIN, null, null from a,b where a.ISIN <> b.ISIN
union
select scode, cname, fvalue, ISIN, nsymbol, paidup from a,b where a.ISIN = b.ISIN
union
select null, b.cname, b.fvalue, b.ISIN, b.nsymbol, b.paidup from a, b where b.ISIN <> a.ISIN
我得到插入每個記錄3行,其中欲被插入僅1記錄。任何幫助將不勝感激。
我在尋找類似下面
表A
SCODE CNAME F值ISIN
FB,臉譜,10,INAB13230LL IBM,國際商業機器,10,INAB13230AB
表B
nsymbol cname fvalue ISIN paidup
FBOOK,臉譜,10 INAB13230LL,10 MSFT,微軟,10,INAB13230MS,10
表C
SCODE CNAME F值ISIN nsymbol paidup
FB,臉譜,10,INAB13230LL,FBOOK ,10 IBM,國際商業機器,10,INAB13230AB,NULL,NULL 空,微軟,10,INAB13230MS,MSFT,提前10個
感謝。
需要查看一些示例數據。但是,您似乎會爲每個項目返回3個不同的行。可能你需要的是確定你想要返回哪一個。這可能需要有一個子查詢才能獲得最重要的記錄,然後加入到當前的select中以獲取其餘的值 – Kickstart
表AFB,Facebook,10,INAB13230LL IBM,International Business Machines,10,INAB13230ABFBOOK,10 FBOOK,臉譜,10 INAB13230LL,10 – user2721022
我在尋找類似下面 表A SCODE CNAME F值ISIN FB,臉譜,10,INAB13230LL IBM,國際商業機器, 10,INAB13230AB 表B nsymbol CNAME F值ISIN paidup FBOOK,臉譜,10 INAB13230LL,10 MSFT,微軟,10,INAB13230MS,10 表C SCODE CNAME fintue ISIN nsymbol paidup FB,Fa cebook,10,INAB13230LL,FBOOK,10 IBM,國際商業機器,10,INAB13230AB,NULL,NULL 空,微軟,10,INAB13230MS,MSFT,10 – user2721022