【发布时间】:2016-04-07 20:39:21
【问题描述】:
每个表都有一个列 RECNUM。它们是(十进制(28,0),不为空)。这就是我加入的地方。我想在 CUNIT 中选择 DESC 列。它是 (varchar(28,0),不是 null)。当我运行查询时,我得到:
消息 156,级别 15,状态 1,行 1 关键字“DESC”附近的语法不正确。以下是我的查询:
SELECT CDCLSVC.UNIT_ID,CAUNIT.DESC
FROM CDCLSVC
LEFT JOIN CAUNIT
ON CDCLSVC.RECNUM = CAUNIT.RECNUM
【问题讨论】:
-
SELECT CDCLSVC.UNIT_ID,CAUNIT.[DESC] ...DESC是关键字。用[]引用它或重命名例如“描述”。 -
并且以后尽量避免使用 SQl 服务器关键字作为对象名称。
-
嗨@lad2025:这不是评论,而是答案:-)
-
@ThorstenKettner 是的,但我认为这个问题是明显的“错字”,应该关闭。
-
@lad2025:显然,当 Chris 选择
DESC作为列名时,他不知道他使用了保留字。所以这个问题没问题。而且,谁知道呢,将来有人甚至可能会犯类似的错误,并且很高兴找到这个请求和答案。
标签: sql sql-server-2005