Здравствуйте! постараюсь сформулировать вопрос, он больше касается для собственного понимания)
есть к примеру таблица с несколькими колонками, с индексом primary id колонки к примеру, есть два запроса :
1. SELECT * FROM table ORDER BY id ASC
2. SELECT * FROM table
вопрос результат при всех условиях будет один и тот же? если нет то приведите пример пожалуйста при каких условия он будет другой
я понимаю что по стандартам SQL-92 ORDER BY дает гарантию сортировки и надо его соблюдать т.д. и т.п. но интересует конкретный момент описанный выше, ведь в данный момент запрос без ORDER уже по сути отсортирован индексацией?
Сортировка
Re: Сортировка
Выполните вставку не в порядке сортировки и посмотрите на результат.
Re: Сортировка
Порядок записей в запросе без order by ничем не определен и никак не гарантирован.
Даже если у тебя сегодня постоянно один и тот же результат (без order by ) - то завтра он может стать другим.
Если нужен определенный порядок записей - то только order by тебе поможет.
Наличие индекса, первичного ключа - никак не определяет порядок выдачи записей, а запрос когда нет ни джойнов, ни условий ограничения, ни условий сортировки, вообще не будет использовать никакие индексы т.к. они не требуются для этого запроса и только замедлят выдачу.
Даже если у тебя сегодня постоянно один и тот же результат (без order by ) - то завтра он может стать другим.
Если нужен определенный порядок записей - то только order by тебе поможет.
Наличие индекса, первичного ключа - никак не определяет порядок выдачи записей, а запрос
Код: Выделить всё
SELECT * FROM table