2016-05-17 70 views
0

我想從選擇子查詢中添加別名到sql查詢。是否可以從子查詢中添加SQL別名?

SELECT 
    ID AS(
      SELECT 
       TOP1 NAME 
      FROM MYTABLE 
    ) 
    ,NAME 
    ,SURNAME 
FROM PEOPLE 

這可能嗎?

錯誤:

Msg 102, Level 15, State 1, Line 1 Incorrect syntax near '('. Msg 102, Level 15, State 1, Line 1 Incorrect syntax near ','. Msg 156, Level 15, State 1, Line 8 Incorrect syntax near the keyword 'and'

+5

爲什麼地球上..? –

+0

您正在使用哪個數據庫?當您嘗試查詢時,發生了什麼? – Alfabravo

+0

切換順序,'(從MYTABLE選擇TOP1名稱)AS ID'。雖然沒有多大意義。要麼有相關的子查詢,要麼進行連接。 – jarlh

回答

1

唯一可能與此:

DECLARE @n VARCHAR(MAX), @sql VARCHAR(MAX) 

SELECT TOP 1 @n = NAME FROM MYTABLE 
SET @sql = 'SELECT ID AS ' + @n + ', NAME, SURNAME FROM PEOPLE' 

EXEC(@sql) 
+0

我猜'TOP 1'不需要 –

+0

@Prdp,沒有意義沒有排序 –

相關問題