用 SQL 服务器上特定单元格的数据填充 table 的列?
Fill the columns of a table with data from an specific cell on SQL Server?
可能吗?我有很多库存清单,每个商店一个,商店有一个 ID,我需要获取商店 ID 并复制到信息旁边的列中,我猜它可能是临时化的 tables,因为示例:
我想改造这个:
Col1 Col2 Col3
-------------------
NULL NULL NULL
Store 5537 NULL
NULL NULL NULL
stuff1 2
stuff2 5
stuff3 1
stuff4 2
进入这个:
Col1 Col2 Col3 Col4
------------------------
NULL NULL NULL 5537
Store 5537 NULL 5537
NULL NULL NULL 5537
stuff1 2 5537
stuff2 5 5537
stuff3 1 5537
stuff4 2 5537
通过从原始 table 的 col2,row2 中获取数字。
请帮忙!我知道这可能不是通过一直重复数字来填充数据库的最佳方式,但我的老板希望这样。所以请帮我出出主意。
你可以用 CROSS APPLY
:
SELECT t.Col1, t.Col2, t.Col3, a.Col2 AS Col4
FROM TableName t
CROSS APPLY (SELECT Col2 FROM TableName WHERE Col1 = 'Store') a
可能吗?我有很多库存清单,每个商店一个,商店有一个 ID,我需要获取商店 ID 并复制到信息旁边的列中,我猜它可能是临时化的 tables,因为示例:
我想改造这个:
Col1 Col2 Col3
-------------------
NULL NULL NULL
Store 5537 NULL
NULL NULL NULL
stuff1 2
stuff2 5
stuff3 1
stuff4 2
进入这个:
Col1 Col2 Col3 Col4
------------------------
NULL NULL NULL 5537
Store 5537 NULL 5537
NULL NULL NULL 5537
stuff1 2 5537
stuff2 5 5537
stuff3 1 5537
stuff4 2 5537
通过从原始 table 的 col2,row2 中获取数字。 请帮忙!我知道这可能不是通过一直重复数字来填充数据库的最佳方式,但我的老板希望这样。所以请帮我出出主意。
你可以用 CROSS APPLY
:
SELECT t.Col1, t.Col2, t.Col3, a.Col2 AS Col4
FROM TableName t
CROSS APPLY (SELECT Col2 FROM TableName WHERE Col1 = 'Store') a