选择月份和年份之间的列

时间:2014-01-09 10:10:50

标签: sql

我有列表:

id  month   year
1   10  2011
2   1   2012
3   4   2011
4   3   2012

我希望选择ID(月份= 10年和2011年)和(月份= 1年份​​和2012年度),这是可能的吗?

2 个答案:

答案 0 :(得分:0)

这是一个基本的SQL SELECT:

SELECT id FROM myTable WHERE (month = 10 AND year = 2011) OR (month = 1 AND year = 2012);

答案 1 :(得分:0)

要搜索任意两个日期之间的行,最简单的解决方案可能是将月份和年份合并为一个数字,然后使用数字比较:

SELECT id
FROM myTable
WHERE year*100 + month BETWEEN 201110 AND 201201

这个解决方案的一个错误是它无法利用索引,因此在非常大的表上会很慢。