MS SQL中如果把字符串转成字段 , 求教
两张表的结构如下:
A表:
id key_info
1 kname
2 kage
B表:
re_id kname
1 小王
2 小李
求教, 如何把A表key_info字段里的kname值, 当做B表的查询字段名
错误示例: select * from B where (select key_info from A where id=1)='小王'
这样的结果实际等于 : select * from B where 'kname'='小王' 结果为空
这样呢,能符合你的要求不:
create table A(id int,key_info varchar(100))
insert into a
values(1,'kname')
insert into a
values(2,'kage')
create table B(re_id int,kname varchar(100))
insert into b
values(1,'小王')
insert into b
values(2,'小李')
select *
from B
where case when (select key_info from A where id=1) = 'kname'
then kname
end = '小王'