如何查询在名称中有括号()的SQL列?

列名称如下所示:“Ab。(Cd)”

它有'。' 以及列名中的()。

我已经尝试了方括号[]围绕列名称,也尝试了“”和“”没有太大的成功。 请帮忙。

我正在使用SQL Server导入和导出向导来导入一些数据。 该查询如下所示:

Select 'Trans. Z4 (St 85)' from `'Monthly Prices$'` 

完整的SQL语句是:

以下是查询: Select F1, HH, AECO, Sumas, Stanfield, Malin, [PG&E], Opal, SoCal, SJ, wTX, sTX, HSC, FGTZ3, [Trans. Z4 (St 85)], Dom, [Tetco M3], 'Trans. Z6 (NY)', AGT, Dawn, Chi, Midcon from 'Monthly Prices$' Select F1, HH, AECO, Sumas, Stanfield, Malin, [PG&E], Opal, SoCal, SJ, wTX, sTX, HSC, FGTZ3, [Trans. Z4 (St 85)], Dom, [Tetco M3], 'Trans. Z6 (NY)', AGT, Dawn, Chi, Midcon from 'Monthly Prices$'

请注意,“每月价格$”表是我尝试导入的Excel工作簿中的工作表。

您的查询:

 Select 'Trans. Z4 (St 85)' from 'Monthly Prices$' 

你不能从string中SELECT 。 您需要在表名称周围使用方括号:

 Select 'Trans. Z4 (St 85)' from [Monthly Prices$] 

但这只是问题的一半。 如果你运行这个,你会得到相同的string,每一行“Trans。Z4(St 85)”。 您还需要为该列名称使用方括号:

 Select [Trans. Z4 (St 85)] from [Monthly Prices$] 

我认为这是你的问题的巫师。 通常这些向导不会像在SSMS中编写语句那样对SQL有一个强烈的理解。 我能够创build一个包含列名的电子表格,但是如果我不使用sql语句导入整个表格,只能使用向导导入它。 这是你的可能吗? 我可以使用正确的方括号在SSMs中查询这些表,这些名称。