> From: Christophe <tech@stripped>
> To: mysql@stripped
> Sent: Tuesday, 18 March 2014, 19:10
> Subject: Precedence in WHERE clauses.
> Hi list,
> I'd like to get your advice about precedence in where clauses in MySQL
> (5.0.51, and 5.1.66 in this case / from lenny and squeeze Debian
> packages ).
> Considering the following simple query :
> SELECT * FROM Status WHERE DWProcessed = 0 AND PreviousStatus NOT IN
> ('PENDING', 'ACCEPTED') AND SubscribeDate < DATE_SUB(NOW(),
> INTERVAL 24
> Which of these filters are processed first ?
> I'd like the first filter (DWProcessed / Lowest cardinality and indexed)
> being processed first, but I can't really find any useful information
> about this .
> Is there any performance impact on query processing, about the order of
> WHERE clauses ?
What is the output from explain?
EXPLAIN SELECT * FROM Status WHERE DWProcessed = 0 AND PreviousStatus NOT IN
('PENDING', 'ACCEPTED') AND SubscribeDate < DATE_SUB(NOW(), INTERVAL 24 HOUR);