MySQL "between" clause not inclusive? Ask Question

MySQL

If I run a query with a between clause, it seems to exclude the ending value.
For example:

select * from person where dob between '2011-01-01' and '2011-01-31'

This gets all results with dob from '2011-01-01' till '2011-01-30'; skipping records where dob is '2011-01-31'. Can anyone explain why this query behaves this way, and how I could modify it to include records where dob is '2011-01-31'? (without adding 1 to the ending date because its been selected by the users.)

ベストアンサー1

From the MySQL-manual:

This is equivalent to the expression (min <= expr AND expr <= max)

おすすめ記事