前面说了格式为:[NOT] BETWEEN 取值1 AND 取值2
,
正常查询:包括取值1 到 包括取值2
举例:用bewteen查询age:15-21之间的
SQL:
SELECT* FROM`person` WHEREage BETWEEN 15 AND 21
结果:
idnamesexagedate_birth1小明男212001-02-02 12:29:302小红女202002-01-01 00:00:00
如果用的是**‘年-月-日 时:分:秒’**查询,则也是左边包括右边也包括
举例:查询 date_birth:2001-01-01 00:00:00—2002-12-31 23:59:59
SQL:
SELECT* FROM`person` WHEREdate_birth BETWEEN '2001-01-01 00:00:00'AND '2002-12-31 23:59:59'
idnamesexagedate_birth1小明男212001-02-02 12:29:302小红女202002-01-01 00:00:003张三男222002-01-01 00:00:01
查询的为:2001和2002年生日
如果用的是**‘年-月-日’**查询,则也是左边包括右边只包括临界点。
临界点的意思就是:只包括AND后那一天的00:00:00这个点,这一天剩下的时间不在查询范围之内。
SQL:
SELECT* FROM`person` WHEREdate_birth BETWEEN '2001-01-01'AND '2002-01-01'
结果:
idnamesexagedate_birth1小明男212001-02-02 12:29:302小红女202002-01-01 00:00:00
查询的为:2001年的生日,和2002年01月01日00:00:00的生日
总的来说 BETWEEN AND 好用,但是要注意的点就是在查询datetime格式的临界点问题。