如果订单时间大于24:00:00大于1,否则如何写sql查询,否则为0?

时间:2018-07-06 21:57:55

标签: sql sql-server sql-server-2008

Order Time
00:36:06
02:21:59
04:53:57
05:52:38
00:29:11
17:53:29
00:17:03
02:03:20
01:24:02
00:09:43
00:20:55
02:53:30
00:32:26
07:45:31
09:11:37
00:19:17
92:11:21
00:19:08
00:10:50
02:46:05

如果订购时间大于24:00:00而不是1,否则如何写sql查询,否则为0?

2 个答案:

答案 0 :(得分:1)

大概ordertime是一个字符串。您可以按照以下方式进行操作:

select (case when ordertime > '24:00:00' then 1 else 0 end)

答案 1 :(得分:1)

假设您能够以某种神奇的方式将92:11:21插入到时间列中,请在查询中使用此计算所得的列:

CASE WHEN DATEDIFF(second, 0, [Order Time]) > 86400 
  THEN 1 
  ELSE 0 
  END AS GreaterThan24h