【问题标题】:SQLServer: Problem with Construction SQL Query [closed]SQLServer:构造 SQL 查询的问题 [关闭]
【发布时间】:2020-09-27 11:00:53
【问题描述】:

我在使用 VBScript 执行 SQL 查询时遇到了一些问题。

我有一个表 A,其主键 (K_ID) 在另一个表 B 中被引用为外键 (FK_ID)。

通常我想使用以下查询检索 B 表中最旧 K_ID 的所有信息:

SELECT * FROM B WHERE FK_ID in (SELECT TOP 1 K_ID FROM A WHERE USED <> 'Y' AND ENV = 'XXX' ORDER BY K_ID)

上面的工作正常。

我现在要做的是检索第二旧的 K_ID 的信息,我正在尝试这个查询:

SELECT * FROM B WHERE FK_ID IN (SELECT TOP 1 K_ID FROM (SELECT TOP 2 K_ID FROM A WHERE USED <> 'Y' AND ENV = 'XXX' ORDER BY K_ID ) z ORDER BY K_ID DESC)

在 SQL Server Management Studio 中,此查询运行良好,我得到了我需要的答案。

现在,如果我使用 VBS 和 ADODB.Connection 尝试相同的查询,我会收到以下错误消息:
ORA-00923: mot-clé FROM missing à l'emplacement prévu

我不知道为什么。我的查询有什么问题?

【问题讨论】:

  • 错误信息指向Oracle的是SQL Server还是Oracle,你使用了正确的连接字符串?

标签: sql-server vbscript adodb


【解决方案1】:

ORA-... 是 Oracle 错误消息。而且Oracle没有top,你只需要使用fetch first n rows

我会说您正在为 Oracle DB 使用 T-SQL 语言

【讨论】:

    猜你喜欢
    • 2022-11-28
    • 2018-10-08
    • 1970-01-01
    • 2020-08-13
    • 2011-11-17
    • 1970-01-01
    • 1970-01-01
    • 2013-05-14
    • 1970-01-01
    相关资源
    最近更新 更多