-4

我正在尝试在 SQL 中创建这个 if 语句,这可能吗?

IF start2 >= start1 AND start2 <= end1, 
    group_start=start1 (ELSE start2)

THEN IF end2 >=end1,
    group_end=end2 (ELSE end1)
4

2 回答 2

4

不太清楚您要做什么,但您通常为此使用 CASE 语句。试试下面的代码,看看这是否是你所追求的。

select case when start2 >= start1 
             and start2 <= end1 then start1 
                                else start2 
        end as group_start
      ,case when end2 >= end1 then end2 
                              else end1
        end as group_end
  from ...
于 2013-05-14T19:53:23.813 回答
1

希望它可以b:如果好的请记得标记为答案

declare @startDate date;
declare @workingDays int;

set @startDate=GETDATE();
set @workingDays=9;


if ((DATEPART(DAY,@startDate)=15 ) AND (@workingDays=5))
    print('asif')
    else if ((DATEPART(DAY,@startDate)=15 ) AND (@workingDays=9))
    print('mahamud')
    else if ((@workingDays>5)) 
    print('nop')
    else
    print ('99')
于 2013-05-15T06:17:42.227 回答