我必须使用SubClass1作为其他查询的列名 喜欢:
echo
如何在函数中将Subclass1作为字符串传递
这是我对sql查询的响应
select SubClass1 from abc
答案 0 :(得分:2)
您可以使用子查询,选择sql
例如在您的代码中:
select SubClass1 as Column1,(select Fieldname from xyz where id='1') as Column2 from abc
请使用罗斯文简单数据库并尝试...还会返回有关嵌套选择的回复
答案 1 :(得分:2)
您应该使用动态sql。
首先将查询响应存储到变量中。
DECLARE @columnname varchar(50)=''
set @columnname=(select QUOTENAME(FieldName) from xyz where id=1)
然后使用该变量进行动态sql查询。
exec('select '+@columnname+' from abc')
注意:此处的示例仅适用于第一个查询响应的单个输出。如果需要多个列,则应使用COALESCE
将行合并为一个结果。
答案 2 :(得分:1)
您可以使用动态SQL
DECLARE @variable varchar(max);
DECLARE @query varchar(max);
--Select the value you want to set as column name
SET @variable = (SELECT top(1) column_name FROM table1);
--Use the variable in the second table as column name
SET @query = 'select '+@variable+' from table2';
EXEC(@query);