Sql where语句参数中的大小写

Sql where语句参数中的大小写,sql,sql-server,sql-server-2005,Sql,Sql Server,Sql Server 2005,大家好,当参数@hh小于或等于72时,我如何满足where语句where语句应该老化@hh您可以这样做: select docket_number,aging from ( select docket_number, sum(cast(dateDiff("mi",assigned,coalesce(completed,getdate()))/60.00 as decimal(20,2))) aging from ft_details_h group

大家好,当参数@hh小于或等于72时,我如何满足where语句where语句应该老化@hh

您可以这样做:

select docket_number,aging from (
    select docket_number, 
        sum(cast(dateDiff("mi",assigned,coalesce(completed,getdate()))/60.00 as decimal(20,2))) aging

    from ft_details_h 

    group by docket_number
)a where aging case  when  @hh <= 72 then  <= @hh else  > @hh end

在编写问题时,请尝试:

where 
    (@hh <= 72 and aging <= @hh) or
    (@hh > 72 and aging > @hh)
但我怀疑你有打字错误,你的意思是

   where (aging <= @hh And @hh <= 72) Or 
         (aging > @hh And aging > 72)

这种情况有一个“死区”。不知道什么类型是老化,但让我们假设它是一个整数。也让老化=73和@hh=73。是否要选择具有此账龄的行?让我看看@hh@hh?73不大于73,所以再次强调,不。我认为,它应该使用原始的伪代码,当@hh老化时
   where (aging <= @hh And @hh <= 72) Or 
         (aging > @hh  And @hh > 72)