SQL 用查询结果作为表名,进行查询怎么弄

数据库为sql server,我使用jdbc去执行sql,现在假设有一张A表,里面存放的是B表的表名,我想通过A表的id获取到B表的表名然后将B表的数据查询出来,因为使用的是通用的方法我不希望改变代码希望能够一条sql查询出来,sql语句大概这样:select * from (select tablename from A where id = “1”)不是我期望的结果

查询后有一个结果集,遍历结果集取出你要查的对象。

你用ID查出你存的字符串(这里你存的是其他表名),返回的结果集是一条记录。

while(rs.next()){ //rs.next()方法是个游标指针
String show=rs.getString("tablename");//方法的参数是你数据库列名,因为你要返回该列名的数据

}

追问

你好你是不是理解错了,我是希望一条sql通过A表的id将B表的数据获取出来,A表的id可以查出B表的表名

追答

select * from B where tablename =(select tablename from A where id = “1”)

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答