Intereting Posts
Как я могу отсортировать результат запроса на основе одного столбца? DB2: как получить генерируемый всегда как оператор для работы с пользователем сеанса Как ограничить количество строк, возвращаемых Oracle на уровне источника данных JDBC? Подключение IIS к LocalDB Как минимизировать количество запросов при добавлении / обновлении строки в таблице с внешними ключами Найти записи, в которых соединение отсутствует Как заменить & или любой особый символ при использовании XMLELEMENT Oracle Почему этот SQL-запрос с подзапросом очень медленный? выполнение «точек интереса вдоль маршрута» на картах Google Подобная операция не возвращает строк в фильтре столбца nvarchar, если данные столбца начинаются с числовых Использование результата запроса в виде имени таблицы «Создать таблицу, если она не существует» – как проверить схему тоже? См. SQL From EntityFramework с запросами, подобными коллекции Как объединить данные из нескольких строк в один? Ошибка подключения к MySQL, которую я никогда не видел

Обновление столбца «заказ» MySQL?

Каков наилучший способ обновить столбец «заказ»?

Скажем, у меня есть столбец id с 0 по 9, а столбец заказов – от 0 до 9.

В настоящее время он находится в базе данных: 0 0, 1 1, 2 2 и т. Д.

Моя страница в формате HTML сообщает, что она хочет в качестве нового порядка: 0 8, 1 3, 2 6 и т. Д. (Это совершенно случайно, определяется пользователем).

Каков наилучший способ сделать обновление?

Я могу выполнить цикл и запустить обновление для каждого. Я также могу создать временную таблицу со всеми парами, а затем обновить на основе подзапроса.

Но я чувствую, что забываю что-то тривиальное, что сделает это намного быстрее. Какие-либо предложения?

Вы должны обновлять каждую строку самостоятельно, нет возможности сделать обновление «map» в sql.

(Есть некоторые трюки, но они вообще не применяются / помогают здесь.)

Если пользователь действительно переупорядочивает предметы наугад, вы не можете многое сделать. Но обычно пользователь может внести небольшую модификацию в существующее упорядочение, например, перемещение одного элемента выше в списке. В этом случае вы можете сделать небольшое улучшение скорости, расслабляя свое ограничение, чтобы столбец порядка сортировки содержал последовательные целые числа. Я обсуждал возможную идею для этого раньше, и вы можете прочитать это предложение, если вас интересуют детали того, как это реализовать.

Но для списков размера 10 это, вероятно, не стоит дополнительных усилий. Просто делайте то, что вы делаете – это, вероятно, будет на практике.