2017-06-02 38 views
0

我在sql server(attrib,att_art,art​​)上有3個不同的表。 「ATTRIB」有屬性的列表,「藝術」有項目和att_art清單應該加入這兩個,像這樣:sql server(插入每個嵌套結果的行)

ATTRIB 
att1 
att2 
att3 
... 

ART 
ar1 
ar2 
ar3 
... 

兩個表都有一個唯一的ID上att_art連接上id_att和id_ar

這是我需要做的:

對於藝術上的每個項目和每個attrib在同一時間,我需要在att_art上插入一個新的行。像這樣:

att1 ar1 
att2 ar1 
att3 ar1 
att4 ar2 
att5 ar2 
att6 ar2 
.... 

我該怎麼做?我有點新的SQL,它是壓倒性的!

+0

如何將代碼知道哪個' att's與哪個'art's關聯?如果全部都是這樣,那麼好(但是很奇怪)......否則我們需要另一個數據源。如果您只是以「手動」方式輸入它們的有效方式,我們也可以提供幫助。 –

回答

1

使用交叉應用.............

Select * from ATTRIB a 
cross apply (select * from ART) b 
1

最典型的方法是用cross joininsert

insert into att_art(attrib, art) 
    select attrib.attrib, art.item 
    from attrib cross join 
     art; 
+0

非常感謝大家。它像一個魅力。 – vvic