当前位置: 首页 > 面试题库 >

在列名称中选择带句点的列SQL Server

祁驰
2023-03-14
问题内容

我链接到允许在列名称中使用句点的ProficyHistorian。因为数据是以非DBMS格式存储的,所以我不能openquery用来获取数据,因为表没有设置模式。因此,我必须使用四部分名称语法来获取数据。此示例有效:

SELECT * FROM iHist...[SELECT * FROM ihTrend]

但这失败,因为 ‘。’附近的语法不正确。

SELECT * FROM iHist...[SELECT [SERVER.pid_astatus[07][0].F_CV.Value] FROM ihTrend]

SERVER.pid_astatus[07][0].F_CV.Value列的名称在哪里

关键字’from’附近的语法不正确 也会失败

SELECT * FROM 
    iHist...[SELECT [SERVER.pid_astatus[[07]][[0]].F_CV.Value] from ihTrend]`

关于如何使SQL Server将其视为专栏的任何想法?

编辑:

Martins建议使用右方括号来使方括号转义仅在sql调用的外部起作用

SELECT [SERVER.pid_astatus[07]][0]].F_CV.Value] FROM iHist...[SELECT * FROM ihTrend]

但是,它 在关键字“ from”附近的语法不正确的 内部不起作用

SELECT * FROM iHist...[SELECT [SERVER.pid_astatus[07]][0]].F_CV.Value] FROM ihTrend]

编辑

SELECT * FROM iHist...[SELECT [SERVER.pid_astatus[07]][0]].F_CV.Value]] FROM ihTrend]

我不得不逃脱列逃脱:)


问题答案:

您只需要逃避这些 ]

[pid_astatus[07]][0]].F_CV.Value]

这对我有用

CREATE TABLE #t(
    [pid_astatus[07]][0]].F_CV.Value] int
)

SELECT [pid_astatus[07]][0]].F_CV.Value]
FROM #t


 类似资料:
  • 问题内容: 我想编写一个简单的查询来选择PostgreSQL中的许多列。但是,我不断收到错误-我尝试了一些选项,但它们对我没有用。目前,我收到以下错误: org.postgresql.util.PSQLException:错误:“列”处或附近的语法错误 要获取具有值的列,请尝试以下操作: 有任何想法吗? 问题答案: 是 保留字 。除非您双引号,否则不能将其用作标识符。像:。 不过,这并不意味着您应

  • 问题内容: 据说如果使用group by子句,则select列列表中必须存在group by列名,但是上面的查询不需要选择sourceobjectid。 问题答案: 结果 不是 遇到的第一行。MySQL非常清楚所谓的“隐藏列”的使用。引用文档: MySQL扩展了GROUP BY的使用,以便选择列表可以引用未在GROUP BY子句中命名的非聚合列。这意味着前面的查询在MySQL中是合法的。您可以使用

  • 问题内容: 我正在使用ADO从Excel工作簿导入数据。我在一个工作表上遇到麻烦,其中一个列名包含一个点:“ Col.1”。 我尝试了所有发现的东西:双引号,方括号,后卫。什么都行不通。会引发错误,或者在每行上查询输出“ Col.1”。 鉴于我无法重命名源文件中的列, 如何使用其名称而不是其编号([F1])手动选择此列? 问题答案: 我终于找到了如何从此列中检索数据。 您需要 替换“。” 按“#”

  • 问题内容: 我有一个带有列名称的数据表: 其中“列”包含数字值,“期间”列是具有1到48的标识列,因此有48行。 我想将此表按摩成一种格式,在该格式中,我具有“名称”列和“值”列以及“期间”列。 我想创建原始表的视图来执行此操作吗?如何选择列名称,并将其以及该列中的正确值放入NameOfVehicle和Value列中? 问题答案: 如果您有固定的列,则始终可以执行以下操作: 如果列是动态的或未知的

  • 问题内容: 我正在一个项目中,另一个开发人员创建了一个表,该表的列名为。那是两个词之间的空格。如果我使用“企业名称” 运行语句,则说没有名称为“企业”的列。 我怎么解决这个问题? 问题答案: 通常,第一步是首先不要这样做,但如果已经完成,则需要诉诸正确的列名引用: 通常,这类事情是由使用Microsoft Access之类的人创建的,并且总是使用GUI来做他们的事情。

  • 在Loc vs. iloc vs. ix vs. at vs. iat的答案中选择?例如。 现在我想要所有的栏目,除了“食物”和“高度”。 我认为类似于的东西可以工作,但是Python返回。 我知道有一种解决方法:。然而,在我的现实生活中,我有数百列要删除。键入所有列名是如此低效。 我期待类似于R语言中的或。 还阅读了选择/排除Pandas中的列集。