Sql 选择外部应用用例时
我正在使用OuterApply创建查找两个结果,但根据它们返回的内容,我只需要使用一个。我在select中使用Case测试行。但它并没有按预期的那样工作Sql 选择外部应用用例时,sql,Sql,我正在使用OuterApply创建查找两个结果,但根据它们返回的内容,我只需要使用一个。我在select中使用Case测试行。但它并没有按预期的那样工作 select (case when s.ord_hdrnumber = '0' then (case when s2.ord_hdrnumber = NULL then s3.ord_hdrnumber else s2.ord_hdrnumber end) else s.ord_hdrnumber end) ord, into #stops2
select (case when s.ord_hdrnumber = '0' then (case when s2.ord_hdrnumber = NULL then s3.ord_hdrnumber else s2.ord_hdrnumber end) else s.ord_hdrnumber end) ord,
into #stops2
from #Stops s left join assetassignment a
on s.lgh_number = a.lgh_number
outer apply (select top 1 * from #stops where #stops.mov_number = s.mov_number and #stops.stp_sequence > s.stp_sequence and #stops.ord_hdrnumber > 0 order by #stops.stp_sequence asc) s2
outer apply (select top 1 * from #stops where #stops.mov_number = s.mov_number and #stops.stp_sequence < s.stp_sequence and #stops.ord_hdrnumber > 0 order by #stops.stp_sequence desc) s3
我做错了什么?如果这是SQL Server。。将`=NULL`更改为
为NULL
。这里可能存在许多问题,因为代码编写得不好,但是我知道s2.ord\u hdrnumber=NULL将不起作用,您需要s2.ord\u hdrnumber为NULL是否起作用。。。令人尴尬的
Output s.ord s2.ord s3.ord
NULL 0 NULL 2979070
NULL 0 NULL 2979070
2979070 2979070 NULL 2979070
2979070 2979070 2979070 NULL