史蒂夫和斯凯 发表于 2018-10-19 12:33:23

SQL中 CASE WHEN 使用

declare @SelDD smalldatetime,@SelHH tinyint  set @SelDD=cast(convert(varchar(19),Getdate(),111) as smalldatetime)
  set @SelHH=datepart(hour,Getdate())
  if @SelHH=0
  begin
  select H0 from 表
  end else
  if @SelHH=1
  begin
  select H1 from 表
  end
  if @SelHH=2
  begin
  select H2 from 表
  end
  if @SelHH=3
  begin
  select H3 from 表
  end
  if @SelHH=4
  begin
  select H4 from 表
  end
  if @SelHH=5
  begin
  select H5 from 表
  end
  if @SelHH=6
  begin
  select H6 from 表
  end
  if @SelHH=7
  begin
  select H7 from 表
  end
  if @SelHH=8
  begin
  select H8 from 表
  end
  if @SelHH=9
  begin
  select H9 from 表
  end
  if @SelHH=10
  begin
  select H10 from 表
  end
  if @SelHH=11
  begin
  select H11 from 表
  end
  if @SelHH=12
  begin
  select H12 from 表
  end
  if @SelHH=13
  begin
  select H13 from 表
  end
  if @SelHH=14
  begin
  select H14 from 表
  end
  if @SelHH=15
  begin
  select H15 from 表
  end
  if @SelHH=16
  begin
  select H16 from 表
  end
  if @SelHH=17
  begin
  select H17 from 表
  end
  if @SelHH=18
  begin
  select H18 from 表
  end
  if @SelHH=19
  begin
  select H19 from 表
  end
  if @SelHH=20
  begin
  select H20 from 表
  end
  if @SelHH=21
  begin
  select H21 from 表
  end
  if @SelHH=22
  begin
  select H22 from 表
  end
  if @SelHH=23
  begin
  select H23 from 表
  end

页: [1]
查看完整版本: SQL中 CASE WHEN 使用