我有一个名为 spGetOrders 的存储过程,它接受几个参数:@startdate 和@enddate。这将查询“订单”表。表中的一列称为“ClosedDate”。如果订单尚未关闭,则此列将保留 NULL,如果已关闭,则保留日期值。我想添加一个 @Closed 参数,它会取一点值。在一个简单的世界里,我可以做..
select * from orders o
where o.orderdate between @startdate AND @enddate
and (if @Closed = 1 then o.ClosedDate IS NULL else o.ClosedDate IS NOT NULL)
显然,这是行不通的。我也在研究动态 sql,这是我最后的手段,但开始看起来像答案。
请帮忙..