SQL SELECT列字母前缀

时间:2013-01-03 09:12:04

标签: sql sql-server tsql select

我不想发布这个,因为我确信它很容易,但我似乎无法在任何地方找到答案。我从两个表中提取数据,并希望在ID前面添加一个字母,以指示它来自哪个表。 E.g。

SELECT 'A' + ID as originID FROM theTable

但是我收到了错误

Conversion failed when converting the varchar value 'A' to data type int.

我认为这是因为'+'加号导致SQL尝试将两个值一起添加。我尝试了几种不同的方法,但得到了相同的结果,例如:

DECLARE @a VARCHAR(1) SET @a = 'A' "
SELECT @a & [ID] AS originID

在PHP中,我通常会使用“。”用于连接和“+”用于添加。是否有另一种在SQL中连接字符串的方法?感谢。

2 个答案:

答案 0 :(得分:7)

使用CAST

SELECT 'A' + CAST(ID as VARCHAR(15))
FROM...

答案 1 :(得分:1)

你也可以试试||用于连接。这应该有效:

SELECT 'A' || ID as originID FROM theTable