Просмотр полной версии : Способ сортировки
Raadsert
18.05.2022, 19:25
Здравствуйте.
Недавно прочёл статью по сортировке данных и о множестве алгоритмов для сортировки. (Вот эту: https://habr.com/ru/post/335920/)
И мне стало интересно а какой алгоритм использует MySQL при обращении к базе данных с командой на сортировку. Я к сожалению не нашёл ответа на просторах интернета, как и информацию о логике работы MySQL. Возможно кто-то может подсказать, если кто-то знает?
p.s. Просто думаю что способ сортировки который использует MySQL является самым лучшим, раз он пользуется большой популярностью.
В реляционных БД такие вещи делаются индексами
Просто думаю что способ сортировки который использует MySQL является самым лучшим, раз он пользуется большой популярностью.
Что есть в твоем понимании "популярность"? :)
Например 100 человек что-то на этом (простеньком) сделали...
А одна контора на другом (очень навороченном) замутила нечто в мировых масштабах...
Получается что первое популярнее второго. Но далеко не с самыми лучшими алгоритмами и возможностями.
способ сортировки который использует MySQL является самым лучшим
Не бывает "лучшего" способа сортировки.
Все зависит от конкретных условий.
Отсортировать массив в памяти, совсем не тоже самое, что отсортировать массив на диске.
И даже сортировка в памяти зависит от самого массива. Что в массиве? Только числа, или более сложные объекты, объекты хранятся в самом массиве (как может быть в С/С++) или просто где то в памяти, а массиве только указатели на них (как в JS).
Насколько "дорогие" операции сравнения и перестановки....
Для конкретной постановки задачи и применяется конкретный алгоритм.
Raadsert
19.05.2022, 14:41
В реляционных БД такие вещи делаются индексами
А где можно поподробнее почитать об этом?
Raadsert
19.05.2022, 14:43
В реляционных БД такие вещи делаются индексами
Не бывает "лучшего" способа сортировки.
Все зависит от конкретных условий.
Отсортировать массив в памяти, совсем не тоже самое, что отсортировать массив на диске.
И даже сортировка в памяти зависит от самого массива. Что в массиве? Только числа, или более сложные объекты, объекты хранятся в самом массиве (как может быть в С/С++) или просто где то в памяти, а массиве только указатели на них (как в JS).
Насколько "дорогие" операции сравнения и перестановки....
Для конкретной постановки задачи и применяется конкретный алгоритм.
Я знаю об этом. Именно поэтому захотелось знать каким способом это делаю в базах данных MySQL
захотелось знать каким способом это делаю в базах данных MySQL
Наверняка у них есть профильный форум... ;)
Raadsert
19.05.2022, 17:39
Наверняка у них есть профильный форум... ;)
Только вот вряд ли им будет понятна статья об алгоритмах и при чём тут JS.
и при чём тут JS
У меня к тебе встречный вопрос... Каким боком на форуме JS вопросы про устройство MySQL?
Raadsert
19.05.2022, 20:19
У меня к тебе встречный вопрос... Каким боком на форуме JS вопросы про устройство MySQL?
Потому что на форуме JS могут знать алгоритм который используется в MySQL.
vBulletin® v3.6.7, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot