选择开始年份和开始月份之间的数据以结束年份和结束月份?
问题描述:
我想选择给定范围的年份和月份的行。 (i.e.: from <start year>+<start month> to <end year>+<end month>).
选择开始年份和开始月份之间的数据以结束年份和结束月份?
我已经使用下表。
Id Page_id Url Score Month Year
1 1 Link 192 4 2015
2 1 Link 247 5 2015
3 1 Link 304 6 2015
4 1 Link 283 7 2015
.
.
10 1 Link 288 1 2016
11 1 Link 295 2 2016
12 1 Link 393 3 2016
我从(<5+2015> to <2+2016>)
获取数据。 我试着下面的查询,但我得到意想不到的行。我错过了什么吗?
SELECT * FROM `readability` AS t WHERE t.url
BETWEEN STR_TO_DATE(CONCAT('5', '2015'), '%Y%m') AND
LAST_DAY(STR_TO_DATE(CONCAT('2', '2016'), '%Y%m'));
答
你好,你好像缺少了很多。 url
与您想要的条件有什么关系。
想必,你想:
where year * 100 + month between 201505 and 201602
您的数据没有日期列。你可能一切都转换为日期,但整数(或字符串)比较就足够了。
答
将有关日期的数据转换为日期mysql数据类型。
接下来,只要这样的查询:
SELECT * FROM `readability` WHERE (date_field BETWEEN '2015-01-05' AND '2016-01-02');