本文介绍了如何通过使用另一个表的列值来分配列名的别名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我有疑问要在sql中编写查询,以便使用我在下面提到的另一个列值来分配列名的别名:

Hi,

I have doubt for writing query in sql for assigning alias of column names using another column values that i mentioned below:

Table1
Id     FName   Lname
1      peter    pt
2      shiv     sh


Table2
attribute     Displayname
FName         FirstName
Lname         LastName


所以我想要的输出如下所示


So the output what i want is like below

Id    FirstName      LastName
1      peter           pt
2      shiv            sh


我尝试使用以下查询,但我却无法得到它:


I tried for using below query but i dint get it:

select Id,FName as (select Displayname from Table2 where attribute='FName'),
Lname as (select Displayname from Table2 where attribute='Lname')
from Table1



请帮帮我



Please help me out

推荐答案


set @sql = N'SELECT Column1 as ' + GetName(@myVariable) + N' FROM Table1'
exec sp_executesql @sql


但这是不可行的,因为动态SQL具有安全隐患/管理问题.


But this is not suggestible as dynamic SQL has security implications/management issues.


--input parameters: @AttribName


--variable to store description
DECLARE @Description VARCHAR(50)

--get description by attribute name
SELECT @Description = Displayname
FROM Table2
WHERE Attribute = @AttribName

RETURN @Description



请阅读更多信息: http://msdn.microsoft.com/en-us/library/ms186755. aspx [^ ]



Please, read more at: http://msdn.microsoft.com/en-us/library/ms186755.aspx[^]


这篇关于如何通过使用另一个表的列值来分配列名的别名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-26 10:09
查看更多