Zac*_*ach 2 sql sql-server ssms sql-server-2008
我有一个SQL Server 2008数据库,其中一列名为ES&D.我想基于该列进行查询,如下所示:
SELECT ES&D FROM myDB
Run Code Online (Sandbox Code Playgroud)
或这个:
SELECT * FROM myDB WHERE ES&D=1
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误(我正在使用SQL Server Management Studio编写查询):
消息207,级别16,状态1,行1
无效的列名称"ES".
消息207,级别16,状态1,行1
无效的列名称"D".
有没有办法逃避&列名称,以便SQL按字面意思对待它?
是 - 将列名括在方括号中:
SELECT [ES&D] FROM myDB
Run Code Online (Sandbox Code Playgroud)
这应该工作 - 我希望!例如,在([Order Details])中包含空格的表名或列名,或者像SQL关键字的对象名,如[Order]表