Review the order of priority between AND and OR.
, .
: 10 + 10 * 10 = 110, (10 + 10) * 10 = 200.
AND OR. , OR, :
WHERE BookingInfo.BookingDate = '05-18-2010' AND BookingInfo.ClinicID = '1'
OR BookingInfo.ClinicID = '2'
:
WHERE (BookingInfo.BookingDate = '05-18-2010' AND BookingInfo.ClinicID = '1')
OR BookingInfo.ClinicID = '2'
, :
WHERE BookingInfo.BookingDate = '05-18-2010' AND
(BookingInfo.ClinicID = '1' OR BookingInfo.ClinicID = '2')
, , , , .
, MM-DD-YYYY, MySQL . YYYY-MM-DD. .
SELECT DATE('05-18-2010');
SELECT DATE('2010-05-18');
:
, ?
, , , OR. -, MySQL :
http://dev.mysql.com/doc/refman/5.1/en/operator-precedence.html
, :
BookingDate ClinicID
2010-05-18 2
2008-05-18 2
WHERE BookingInfo.BookingDate = '2010-05-18' AND
BookingInfo.ClinicID = '1' OR BookingInfo.ClinicID = '2'
, . , , . ? TRUE, FALSE:
TRUE AND FALSE OR TRUE
FALSE AND FALSE OR TRUE
OR , :
TRUE AND (FALSE OR TRUE)
FALSE AND (FALSE OR TRUE)
OR TRUE TRUE, :
TRUE AND (TRUE)
FALSE AND (TRUE)
, FALSE AND TRUE FALSE. , , .
, , OR, , :
(TRUE AND FALSE) OR TRUE
(FALSE AND FALSE) OR TRUE
:
(FALSE) OR TRUE
(FALSE) OR TRUE
FALSE TRUE TRUE, .
, , , OR. :
WHERE BookingInfo.BookingDate = '2010-05-18' AND
(BookingInfo.ClinicID = '1' OR BookingInfo.ClinicID = '2')