我有这样的查询
将view_src_14视为String = GetParameterValue(“ ViewSrc14”)
将calendar_date_14设置为String = GetParameterValue(“ CalendarDate14”)
select calendar_date,view_src,sum(effective) effective_total, sum(ineffective) ineffective_total
from wrk_alert_effectiveness
where calendar_date='" + calendar_date_14 + "' and '" + view_src_14 + "'
group by 1,2
order by 1 desc;
calender_date_14
和view_src_14
是变量...当我运行查询时会出现此错误:
日期类型为“”的无效输入语法
我在哪里进行更改?
答案 0 :(得分:1)
我认为这对于回答来说不够具体,但是对于评论来说太长了。
您正在尝试执行SQL语句,并在其中传递语句中常量的值。这是允许的,并且是SQL的一部分-使用参数。参数有两种,命名参数和位置参数。
select calendar_date, view_src,
sum(effective) as effective_total, sum(ineffective) as ineffective_total
from wrk_alert_effectiveness
where calendar_date = @date1 and @date2
group by 1, 2
order by 1 desc;
对于匿名参数,这些通常由?
表示。有时,带有冒号的名字会被引入。
确切的语法取决于您的数据库和所使用的应用程序接口。我的观点是,您应该了解参数以及如何使用它们。
答案 1 :(得分:0)
"select calendar_date, view_src, sum(effective) effective_total,
sum(ineffective) ineffective_total
from wrk_alert_effectiveness
where calendar_date= '" + @CalendarDate + "' AND " + @ViewSrc + "
group by 1,2
order by 1 desc;"