首页 > 解决方案 > 如何在 excel microsoft 查询中将变量声明为参数?

问题描述

我在 excel 中使用参数完成了许多 sql 查询,例如

Select ... from .. where x = ?

但后来我遇到了一个问题,我将一个变量声明为参数,我得到了一个错误Invalid parameter number

我的代码如下

Set NOCOUNT ON;
Declare @end_dt DATETIME2 = ?;
Select ... from ...

当我分配@end_dt = getdate()or@end_dt = "2020-02-03"时,它工作得很好。

有人对此有解决方案吗?

标签: sqlexcel

解决方案


您应该先声明变量,然后再设置。

Set NOCOUNT ON;
declare @end_dt as datetime
set @end_dt = (select ..from ...)

然后您可以在查询中使用 end_dt 变量

select * from table where end_date = @end_dt;

推荐阅读