MSSQL如果做字符串拼接的子查询

例子
表 A

ID0000 VALUE0
1 AAAAAA
2 BBBBBB
3 CCCCCC

表 B


ID0000 SQL000
7 SELECT VALUE0 FROM A WHERE ID0000='1'
8 SELECT VALUE0 FROM A WHERE ID0000='2'
9 SELECT VALUE0 FROM A WHERE ID0000='3'

想要的效果
用 SELECT 查询表 B的时候
得到
列 ID0000 SQL000
7 AAAAAA
8 BBBBBB
9 CCCCCC

想问下
除了用游标遍历每条数据去
执行语句替换值以外
是否还有 SELECT 子查询字符串的方式

2个回答

DECLARE @i int
DECLARE @j int
set @@i=7
set @@j=1
while(@i<10)
BEGIN
insert into B SQL000=(select VALUE0 from A where ID0000=@j) where ID000=@i
set @@i=@@i+1;
set @@j=@@j+1
END

这个是我写的,没有测试,你可以自己试试;可能有问题,但是大体的思路是这样的,如果不熟悉可以看看SQL编程;

如果回答对您有帮助,请采纳

或许在里面还可以添加一个CONTINUE

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问