0

5 列の SQL ビューがあります。そのデータをテーブルに書き込みたいのですが、2列しかありません。

見る

id 
car1
car2
car3
car4

テーブル

id
cars

INSERT INTO table 
SELECT * from view
4

3 に答える 3

2
insert cars (id, car)
select id, cars
from view
unpivot
(cars for car in (car1, car2,car3, car4)) as u
于 2012-08-03T15:37:02.910 に答える
2

ブルートフォースと無知(しかし信頼できる):

INSERT INTO table
   SELECT id, car1 FROM view WHERE car1 IS NOT NULL
   UNION
   SELECT id, car2 FROM view WHERE car2 IS NOT NULL
   UNION
   SELECT id, car3 FROM view WHERE car3 IS NOT NULL
   UNION
   SELECT id, car4 FROM view WHERE car4 IS NOT NULL

UNION には重複を排除できるメリットがあります。

于 2012-08-03T15:37:40.430 に答える
1

これを試しましたか?

INSERT INTO table SELECT ID, Car1 + ',' + Car2 + ',' + Car3 + ',' + Car4 as Cars from view

于 2012-08-03T15:36:41.833 に答える