2013-03-04 67 views
0

我有一个表是这样的记录之间..选择两个日期

TeacherName   | Class | Section | SubjectId | Date | ToDate |Day 
-------------------------------------------------------------------------------- 
     Matt   | 12 | B  | Math  |2013-03-04 |2013-03-14 |Mon 
     John   | 12 | A  | Phy  |2013-04-03 |2013-04-12 |Mon 

我想查询是这样的(而不是实际的SQL查询)...

Select * 
from Table 
where Class='12' and section='B' and Date= '2013-03-07' 

这应该给我第一行有Matt,因为给定日期2013-03-07位于该行的日期范围内,从2013-03-042013-03-14

这甚至可能吗?

+1

你有没有真正尝试过吗? – 2013-03-04 08:15:49

+0

我用关键字之间,但不会在这种情况下工作。 – Arbaaz 2013-03-04 08:16:23

+0

Select * from Table where class = '12'and section ='B'and Date ='2013-03-07' does not return anything – Arbaaz 2013-03-04 08:17:43

回答

6

使用BETWEEN

SELECT * 
FROM TableName 
WHERE Class = '12' AND 
     Section = 'B' AND 
     '2013-03-07' BETWEEN DATE AND TODATE 
+0

这是迄今为止在本网站上得到的最快答案。大声笑 你们在哪里学到这么多东西? – Arbaaz 2013-03-04 08:22:46

+4

这里在SO':D' – 2013-03-04 08:24:41

+0

哈哈我看到.... :) – Arbaaz 2013-03-04 08:30:47