Сначала where потом limit

Cheep

Новичок
Сначала where потом limit

У меня например есть такой запрос.

SELECT * FROM table WHERE .... LIMIT 0, 30

как сделать чтоб сначала оно сделал WHERE ? А то он делает LIMIT а потом Where. Может проблема очень примитвная но не мог найти способ устранение.

Через phpmyadmin всё норм.
 

Gas

может по одной?
:)
сначала и так выполняется where.
ты понимаешь чем чреват limit без order by ?
 

Sluggard

Новичок
Cheep
А сколько записей тебе возвращается, когда выполняется запрос не через phpmyadmin?
 

Wicked

Новичок
А давайте не будем гадать на кофейной гуще и узнаем, что скрывается под "...." в запросе.
 

A-Lex[FM]

Web/Highload/DataScience
А документацию кто-нибудь читает?

If you use LIMIT row_count with ORDER BY, MySQL ends the sorting as soon as it has found the first row_count rows of the sorted result, rather than sorting the entire result. If ordering is done by using an index, this is very fast. If a filesort must be done, all rows that match the query without the LIMIT clause must be selected, and most or all of them must be sorted, before it can be ascertained that the first row_count rows have been found. In either case, after the initial rows have been found, there is no need to sort any remainder of the result set, and MySQL does not do so.

When combining LIMIT row_count with DISTINCT, MySQL stops as soon as it finds row_count unique rows.

In some cases, a GROUP BY can be resolved by reading the key in order (or doing a sort on the key) and then calculating summaries until the key value changes. In this case, LIMIT row_count does not calculate any unnecessary GROUP BY values.

As soon as MySQL has sent the required number of rows to the client, it aborts the query unless you are using SQL_CALC_FOUND_ROWS.
 
Сверху