Sql server 在Excel 2010中使用MS Query,使用参数从SQL Server获取数据使用两个日期之间的复杂查询

Sql server 在Excel 2010中使用MS Query,使用参数从SQL Server获取数据使用两个日期之间的复杂查询,sql-server,excel,ms-query,Sql Server,Excel,Ms Query,我尝试使用和中指出的解决方案。然而,我无法找到任何可行的解决方案 下面是我遇到麻烦的部分。查询中有多个表。我在ConnectionProperties窗口的Definition选项卡的命令文本中粘贴了SQL。我在输入日期时没有问题,因为日期如下。然而,当我用问号替换日期时,我收到一条关于从字符串转换日期和/或时间的消息。如果我也这样做并排除引号,我会收到一条关于无效参数号的消息 我在想,我应该尝试通过编程来更新连接文件,因为我不知道如何以其他方式实现我想做的事情 AND CAST(EXITED_

我尝试使用和中指出的解决方案。然而,我无法找到任何可行的解决方案

下面是我遇到麻烦的部分。查询中有多个表。我在ConnectionProperties窗口的Definition选项卡的命令文本中粘贴了SQL。我在输入日期时没有问题,因为日期如下。然而,当我用问号替换日期时,我收到一条关于从字符串转换日期和/或时间的消息。如果我也这样做并排除引号,我会收到一条关于无效参数号的消息

我在想,我应该尝试通过编程来更新连接文件,因为我不知道如何以其他方式实现我想做的事情

AND CAST(EXITED_FROM_ACTIVITY_DATE AS DATE) BETWEEN '2014-12-01' AND '2014-12-01'

您可以在如下查询中使用日期格式:

TO_CHAR(A.JOURNAL_DATE ,'YYYYMM') >='201506' and TO_CHAR(A.JOURNAL_DATE ,'YYYYMM') <='201506'

可以将参数设置为201501 1可以将时段1延长到12

如果也将参数设置为日期会发生什么?我不知道。我已经放弃了那种方法。这似乎是太难做到与许多例外。我在创建MS查询时使用了宏记录器。以下是有关查询表对象的一些信息: