将别名用作另一列。例如,采用以下查询。
SELECT 'Santosh' as fname, 'Jadi' as lname, fname;
我想将别名fname
用作第三列。
有可能吗?如果是,如何实现?
答案 0 :(得分:3)
您可以:
select t.fname, t.lname, t.fname as thirdcolumn
from ( values ('Santosh', 'Jadi')
) t (fname, lname);
对于您的实际表,您可以将其重新表达为:
select t.*, tt.fname as thirdcolumn
from table t cross apply
( values (col)
) tt (fname);
答案 1 :(得分:2)
我建议您使用CTE,它会给您自由的感觉,您可以多次使用它们而无需任何额外的工作。
WITH MyTable AS
(
SELECT 'Santosh' as fname, 'Jadi' as lname
)
SELECT fname, lname, fname
FROM MyTable
答案 2 :(得分:1)
是的,下面是可能的示例
SELECT weekdayname as A,weekdayname as A from
(
SELECT 'Sunday' AS weekdayname UNION ALL
SELECT 'Monday' UNION ALL
SELECT 'Tuesday' UNION ALL
SELECT 'Wednesday' UNION ALL
SELECT 'Thursday' UNION ALL
SELECT 'Friday' UNION ALL
SELECT 'Saturday'
) T
答案 3 :(得分:1)
要访问fname
,您需要将查询放入子查询中,如下所示:
SELECT K.fname, K.lname, K.fname as NewFname
FROM(
SELECT 'Santosh' as fname, 'Jadi' as lname
) as K
答案 4 :(得分:1)
在这种情况下,您必须使用subquery
SELECT fname, lname,
fname AS col3,
fname AS col4 -- so on
FROM (SELECT 'Santosh' as fname, 'Jadi' as lname) t
输出:
fname lname col3 col4
Santosh Jadi Santosh Santosh