一个列的值作为一个表名进行sql查询
A表记录中的一个字段的值,存放的是B表的表名 如何能把这个值转换为B表查询的真实表名?例如: select * from “A表记录中的一个字段的值(B表表名)” 谢谢! 不能用存储过程哦,可以用函数。前面一定要是select* from 后面怎么转化看大家了 ,我想了一天也没想到好办法 不是用动态sql哦 视图是事先不了的啦 因为显示的只是表名 而不是表里面的列哦
最满意答案
不是很清楚你的意思 推测你的意思有两种可能性: 1.A表中的一个属性所对应的一个元组的值 并且这个值与B表表名相等 你想把它转化B表的表名 貌似这样做没意义 如果想查B表里的内容直接select * from B就OK了啊 如果这个元组值与B表表名不等 你可以用UPDATE语句修改 但似乎也没什么意思 因为只要你想查B表的内容 直接FROM B就可以了 2.你想让输出结果是A表的一列属性值,但FROM后面是B表的表名,就是说FROM后面是另一个表名 但输出结果确是A表的某一列,这样的话就想楼上说的建视图,即通过代码CREATE VIEW B AS SELECT A的列名 FROM A;把A表的那一列建成一个视图叫B。之后直接FROM B就可以了。更多推荐
发布评论