2012-09-24 89 views
1
select concat(Sno,Table) as STB from levels 

上面的查詢會給出錯誤,如果按原樣運行。說我的水平已經valuse作爲concat列包括保留字

Sno Table 
1  Sale 
2  Stock 

我需要的,因爲它成爲只是一個字符串給他們取爲

STB 
--- 
1Sale 
2Stock 

什麼可以解other than changing the column name因爲把引號的字'Table'周圍給出了錯誤的輸出

+0

非常感謝您的答覆,並特別感謝@Tenner。我接受了另一個解決方案,因爲第一次來,低迴購也是一個因素,希望Tenner不會介意,因爲也有先到先得的原因:) – Sami

回答

1

試着用`:

SELECT CONCAT(Sno,`Table`) AS STB FROM levels 
+0

希望你已經閱讀了我的最後一句話'因爲在'Table'這個詞上加上引號給出了錯誤的輸出,因爲它變成了一個字符串' – Sami

+0

我很抱歉,這是一個非常愚蠢的問題。不知道爲什麼我錯過了我通常使用的而不是引號的反撥。但是,現在我瞭解其中的差異,並且非常愚蠢,因爲我被告知它們是相同的,我從來沒有試過尋找差異。非常感謝 – Sami

+0

哈哈沒問題,這是一個常見的錯誤,但停止使用保留字。 ;) –

2

對保留字使用反引號。

select concat(Sno, `Table`) as STB from levels 

儘管在一般情況下,如果你能避免使用保留字數據庫,表,或列在未來的名字,這是一個好主意。而不是'像這樣

+0

希望你讀了我的最後一句話'因爲把引號放在字'表'給出了錯誤的輸出,因爲它變成了一個字符串' – Sami

+0

這不是一個報價,這是一個反效果。如果您使用的是美式鍵盤,則在波浪號字符(〜)下方,可能位於左上角的1​​鍵旁邊。 – Tenner

+0

我很抱歉,這是一個非常愚蠢的問題。不知道爲什麼我錯過了我通常使用的而不是引號的反撥。但是,現在我瞭解其中的差異,並且非常愚蠢,因爲我被告知它們是相同的,我從來沒有試過尋找差異。非常感謝 – Sami

2
select concat(Sno,`Table`) as STB 
from levels 
+0

希望你已經讀了我的最後一句話'因爲把單詞'表'的引號給出了錯誤的輸出,因爲它變成了一個字符串' – Sami

+0

我很抱歉,這是一個非常愚蠢的問題。不知道爲什麼我錯過了我通常使用的而不是引號的反撥。但是,現在我瞭解其中的差異,並且非常愚蠢,因爲我被告知它們是相同的,我從來沒有試過尋找差異。非常感謝 – Sami