2015-12-16 73 views
-9

我需要使用别名需要将两个表中的列

select 
    firstname as fn, 
    lastname as ln, 
    userid, 
    fn + '' + ln as fullname 
from 
    users 

错误表中的两列的组合相结合是

无效列名“FN”。
列名'Ln'无效。

+0

什么问题您有? –

+0

当发布'sql'问题时,您还应该**总是**包含您正在使用的实际的具体数据库系统。并不是所有的东西都被SQL标准覆盖......请添加一个相关的标签,比如'oracle','mysql','postgresql','db2','sql-server'或其他你可能会用到的东西 –

+0

简单答案是你不能使用别名,你需要使用columnnames,所以它必须是:firstname +''+ lastname作为全名(我更喜欢[fullname] = [firstname] +''+ [lastname]但这只是我的偏好) – Tom

回答

1

在SQL Server 2010 2012年使用CONCAT(名字, '',姓)

2008年和更低的版本,就像

选择姓名使用+ '' +姓氏来自用户的全名。

,如果你的别名,然后

选择FN +“” + LN那样,从( 选择姓名为FN,姓氏为ln,用户标识从用户)全名

0

选择姓名为FN,姓氏为ln,用户ID,CONCAT(名字, '',姓)从用户

0

全称这将帮助你

Select [col1] ,[col2], col1 + ' ' + col2 from table_name 
+0

我需要使用别名不是那个列名 – Bhargavi

+0

我不认为这是适用的,你能告诉我为什么你想这样做吗? –

+0

实际上,在我使用case语句的select语句中,我使用了别名。例如:当标题='小时'时\t然后 \t \t'h' 其他'd' 以ratefactor结束。这个比率因子与另一列相结合 – Bhargavi

相关问题