两个不同列中的日期之间的SQL COUNT

时间:2013-05-05 11:56:44

标签: sql count null between

让我们说,我们有这张表:

STUDENT |  START  | END
1       |1998-1-1 |2001-1-1
2       |1999-1-1 |2001-1-1
3       |2000-1-1 |2004-1-1
4       |2000-1-1 | NULL

我想做的是:

计算开始日期和结束日期之间的学生数量!

2 个答案:

答案 0 :(得分:1)

使用Operator和COUNT聚合函数之间的

SELECT COUNT(student) column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2

之间可以与文本一起使用,因此插入值为的日期,

如果您仍然不明白,请在此处阅读

编辑:这应该有用,抱歉错误

http://www.w3schools.com/sql/sql_between.asp

答案 1 :(得分:1)

您似乎需要使用基本的COUNT聚合:

SELECT COUNT(Student)
FROM YourTable
WHERE Start >= @Start 
    AND End <= @End

我分别在开始和结束日期字段周围使用了&gt; =和&lt; =。随意更改为&gt;或者&lt;如所须。从您的问题中不清楚您是否想要在特定字段之间或是否要检查这两个字段之间的范围。