我刚才使用" Insert"功能,并知道足够的SQL是危险的。
我试图通过结合使用动态和静态数据来生成自己的重复行数据。我使用的是SQL Server 2012.
以下需要的例子。
Create table #Temp
(Item nchar(32),
Company nchar(32))
;
Insert Into #Temp (Item, Company)
VALUES
(X, 'Company1'),
(X, 'Company2')
;
Select Item From Table
中的项目编号,并且是"动态"部分因为每天返回的物品数量增加。 我们今天会假装"表"只有两个项目编号,100和200.所以我的最终结果是将每个公司实例添加到每个项目编号,如下所示:
Item |Company
----------
100 | Company1
100 | Company2
200 | Company1
200 | Company2
提前谢谢!
答案 0 :(得分:1)
您可以使用CROSS JOIN,如:
;WITH items AS (
SELECT 100 Item
UNION ALL
SELECT 200
), companies AS (
SELECT 'Company1' as Company
UNION ALL
SELECT 'Company2'
)
--Insert Into #Temp (Item, Company)
SELECT i.Item,
c.Company
FROM items i
CROSS JOIN companies c
输出:
Item Company
100 Company1
100 Company2
200 Company1
200 Company2