A function in a where equals what ?
On Wed, March 19, 2014 15:05, Morgan Tocker wrote:
> Hi Christophe,
>> 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 ?
> When a MySQL server receives a query, it goes through a process called
> query optimization and tries to determine the best way to execute it
> (based on availability of indexes etc). You can think of this as similar
> to how GPS software picks the fastest route - it is very similar.
> The order of the WHERE clause does not matter, and in fact more
> complicated transformations happen in query optimization automatically.
> For Example:
> SELECT * FROM Status WHERE 1=1 AND DWProcessed = 0;
> 1=1 is detected as a tautology and removed.
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe: http://lists.mysql.com/mysql
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
+66 8701 33224
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.