问题标签 [ms-query]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3923 浏览

sql - Excel 中 Microsoft Query 的 SQL 限制

在过去的几周里,我在 Excel 2007 中使用了 Microsoft Query,并且在许多情况下,查询在 SQL Server 2005 中运行良好,但在 Microsoft Query 中出现了不相关的错误。例如,我在 Excel 2007 MS Query 中有这种情况多部分标识符错误,但在 SQL Server 2008中没有,当我删除子查询SELECT并加入这些表时,它起作用了。在这种情况下它似乎也不起作用。

从 Excel 将参数传递给 SQL Server 上的 MS Query 中的临时变量我猜 CTE 在 MS Query 中不起作用,例如MS Query Excel 2007 中的 CTE。在这种情况下它也不起作用。左连接的替代方案

任何人都可以列出 Microsoft Query 中的所有 SQL 限制吗?

0 投票
3 回答
3909 浏览

sql - 左连接的替代方案

我需要使用 MS Query 在 Excel 2007 中显示一组固定管道的月费率,即使管道没有月费率,也必须以这种方式显示

所需输出

我在 SQL Server 2008 R2 中使用以下代码完成了它。

当我尝试在 Excel 2007 的 MS Query 中执行此操作时,我得到以下错误

[Microsoft][ODBC SQL Server Driver] Invalid Parameter Number

[Microsoft][ODBC SQL Server Driver] Invalid Descriptor Index

我通过跟踪和错误发现如果我从ON子句中删除带有参数的条件并将其放入WHERE Clause如下

该代码适用于 MS Query 并给出以下结果

实际输出

在此输出中,未显示当月没有费率的管道。因此,此代码不起作用。因此,我试图LEFT JOIN在这种情况下找到替代方法,以使用 MS Query 在 excel 中获得所需的输出。

关联
Pipeline 和 PipelineRate - 可选的一对多关系
PipelineRate 和 PipelineRateHistory - 可选的一对多关系

任何人都可以建议左加入的替代方法或实现此目的的方法吗?

PS:我不能使用存储过程。我知道如何使用 VBA 来做到这一点。我需要使用 MS Query 来完成此操作

0 投票
0 回答
359 浏览

sql - 通过 Excel 将参数传递到 Informix DB 可以通过 MS Query 工作,但由于一般错误而在返回 Excel 时失败

我需要使用参数和 Excel 查询一个 informix 数据库。在 Microsoft Query 中执行查询时,成功获取并返回数据集,当我尝试返回 Excel 时,会出现以下错误:

> [Informix][Informix ODBC 驱动程序]一般错误。

查询如下:

希望您能提供帮助,因为我是新手。

提前致谢

0 投票
2 回答
621 浏览

sql-server-2008 - SQL Server 查询以检查给定的日期范围内是否存在给定的月份和年份

我正在使用 SQL Server 2008。我的表结构看起来像

当我提供特定的月份和年份时,它必须自动返回给定日期范围内月份和年份的适当行。我尝试使用以下查询,但它不适用于明年的检查。任何 1 都可以帮助我解决这个问题吗?

0 投票
1 回答
2753 浏览

excel - 在 Excel 中使用 MS Query 来查询自身(不是外部源)

我可以将 excel 文件连接到自身作为 MS Query 工作的数据源。但是,只要我在查询中移动文件,就会尝试从其在网络上的先前位置找到它并失败。
我只是想让它尝试查询自己。
我尝试从数据源中的连接字符串中删除目录路径,但它只是出错了。

这甚至可能吗?
或者,还有更好的方法?

0 投票
0 回答
979 浏览

excel - 如何让 Excel 从工作表上的查询表中可靠地执行 sp_executesql?

在 MS Excel 中,如果您使用 Microsoft Query 创建 QueryTable,并且您的 SQL 查询无法通过 Microsoft Query 直观呈现,则不允许为该查询提供参数。真可惜,所以有一种很棒的技术可以允许参数:

您以 ODBCCALL形式提供查询,它使用参数。

除非它没有。

虽然在某些计算机上它可以完美运行,但在其他计算机上,Excel 在尝试刷新查询表时会引发错误:

  • 对于 SQL Native Client 10:Invalid parameter number
  • 对于 SQL Native Client 11:Procedure or function sp_executesql has too many arguments specified.

使用分析器,我可以看到 Excel(实际上是被 Excel 戳的本机客户端)在实际执行之前正在执行此操作sp_executesql

@p1是应该sp_executesql稍后使用的参数占位符,这就是sp_describe_undeclared_parameters失败的地方。它不期望任何自定义参数sp_executesql- 只有两个内在参数@stmt@params. 如果我从查询中手动删除该,@p1位,它在所有情况下都可以正常执行。

这就是问题所在:在某些计算机上,上述自动生成的内容sp_describe_undeclared_parameters与不必要/错误的,@P1位一起使用,而在某些计算机上却失败了。
我们需要让它在所有计算机上工作。

奇怪的事情要考虑:

  • 在没有问题的计算机中,我看不到任何常见的东西。位数或 Windows 版本似乎无关紧要。
  • 我无法在附加位的情况下手动执行上述查询,@P1- 无论我使用什么工具,我都会收到“参数过多”错误,但是,Excel 能够在感觉时执行它没有问题。我可以通过探查器看到命中服务器的确切查询。也许它与连接设置的一个非常特殊的组合有关,但它们在所有计算机上似乎都是相同的(数据源是使用 SQL Server Native Client 11 的 ODBC 系统数据源,并且所有选项卡上的所有参数都相同)计算机)。
0 投票
2 回答
2830 浏览

sql - Excel MS Query - 如何编写参数等于“”或在 SQL 查询中显示全部

刚刚在 MS-Query 中编写完一个 SQL 脚本,我很难让它工作。

我所追求的是相当于这个 SQL where 子句:

因此,如果参数 = 字段中的某些内容,则仅显示该字段,或者如果参数 = 空白,则显示所有结果。

到目前为止,如果我想选择一个特定的项目,这就是我所拥有的,现在我只需要包括额外的如果空白显示全部。

不幸的是,这不起作用。

有什么建议么?

0 投票
1 回答
4879 浏览

sql - SQL将计算列添加到表中

我不精通 SQL,但我使用 Microsoft Query 从旧表创建新表并添加新列(计算列)。

我的计算查询来自同一张表。我基本上想从一年前的同一日期检索一个美元数字,并提供一个计算字段,按帐户显示同比增长。除日期外,每个帐户都有几列唯一数据。

我在想某种查询说明列 x、y 和 z 匹配,但也包括日期列 -364。

如果您能提供帮助,我将不胜感激。

谢谢,迈克

0 投票
0 回答
207 浏览

sql - 从 MS Query 引用工作簿单元格

我在工作簿中有一个查询,其中 SQL 语句是:

现在,我想更新查询以使用我的工作簿中的条件过滤数据,如下所示:

如何在 MS Query(没有 VBA)中实现这一点?

0 投票
1 回答
151 浏览

sql - 在 Microsoft Query 中执行有效的 Oracle DB 查询

我编写了一个对 Oracle 11g DB 执行良好的 oracle 查询(我在 PL/SQL 开发人员中编写了它)。但是,当我尝试将其作为 SQL 复制/粘贴到 Microsoft Query 中时,它会以ORA-00900: invalid SQL statement.

是否有可以包含在查询中以使 Microsoft Query 被视为有效的列表?在我的查询中,我使用了很多SQL 建模——不支持吗?