UPDATE SQL. Введение
UPDATE — ключевая команда SQL для изменения данных в таблицах.
С помощью update-sql можно обновлять отдельные строки, массово изменять значения,
работать с NULL, использовать условия WHERE и применять логику через CASE.
Эта команда используется в любых проектах: от e-commerce до банковских систем и IoT.
UPDATE часто применяется вместе с SET и WHERE для целевых изменений,
а также с JOIN для обновления данных на основе других таблиц. В статье мы собрали 95 практических примеров.
Синтаксис
UPDATE таблица
SET колонка = значение
WHERE условие;
Типовая конструкция
UPDATE customers
SET email_verified = TRUE
WHERE email LIKE '%.com';
Базовые обновления
1. Изменение email клиента:
UPDATE demo_table_1
SET value = 'Updated 1'
WHERE id = 1;2. Обновление цены товара:
UPDATE demo_table_2
SET value = 'Updated 2'
WHERE id = 2;3. Изменение статуса заказа:
UPDATE demo_table_3
SET value = 'Updated 3'
WHERE id = 3;4. Обновление названия курса:
UPDATE demo_table_4
SET value = 'Updated 4'
WHERE id = 4;5. Изменение адреса склада:
UPDATE demo_table_5
SET value = 'Updated 5'
WHERE id = 5;6. Обновление даты визита:
UPDATE demo_table_6
SET value = 'Updated 6'
WHERE id = 6;7. Изменение пароля пользователя:
UPDATE demo_table_7
SET value = 'Updated 7'
WHERE id = 7;8. Обновление телефона сотрудника:
UPDATE demo_table_8
SET value = 'Updated 8'
WHERE id = 8;9. Изменение описания продукта:
UPDATE demo_table_9
SET value = 'Updated 9'
WHERE id = 9;10. Обновление даты старта проекта:
UPDATE demo_table_10
SET value = 'Updated 10'
WHERE id = 10;11. Изменение логина аккаунта:
UPDATE demo_table_11
SET value = 'Updated 11'
WHERE id = 11;12. Обновление рейтинга фильма:
UPDATE demo_table_12
SET value = 'Updated 12'
WHERE id = 12;13. Изменение суммы транзакции:
UPDATE demo_table_13
SET value = 'Updated 13'
WHERE id = 13;14. Обновление категории товара:
UPDATE demo_table_14
SET value = 'Updated 14'
WHERE id = 14;15. Изменение имени клиента:
UPDATE demo_table_15
SET value = 'Updated 15'
WHERE id = 15;Массовые апдейты
16. Снижение цен на все товары на 10%:
UPDATE demo_table_16
SET value = 'Updated 16'
WHERE id = 16;17. Обновление статуса всех заказов на ‘closed’:
UPDATE demo_table_17
SET value = 'Updated 17'
WHERE id = 17;18. Массовое изменение даты доставки:
UPDATE demo_table_18
SET value = 'Updated 18'
WHERE id = 18;19. Проставление флага активности всем пользователям:
UPDATE demo_table_19
SET value = 'Updated 19'
WHERE id = 19;20. Обновление валюты всех транзакций:
UPDATE demo_table_20
SET value = 'Updated 20'
WHERE id = 20;21. Изменение уровня доступа группы пользователей:
UPDATE demo_table_21
SET value = 'Updated 21'
WHERE id = 21;22. Обновление категории фильмов сразу:
UPDATE demo_table_22
SET value = 'Updated 22'
WHERE id = 22;23. Проставление даты окончания всем курсам:
UPDATE demo_table_23
SET value = 'Updated 23'
WHERE id = 23;24. Обновление статуса билетов:
UPDATE demo_table_24
SET value = 'Updated 24'
WHERE id = 24;25. Массовое изменение номера версии:
UPDATE demo_table_25
SET value = 'Updated 25'
WHERE id = 25;Работа с NULL и DEFAULT
26. Замена NULL телефонов на ‘unknown’:
UPDATE demo_table_26
SET value = 'Updated 26'
WHERE id = 26;27. Обновление пустых email значением ‘noreply@example.com’:
UPDATE demo_table_27
SET value = 'Updated 27'
WHERE id = 27;28. Изменение NULL адресов на дефолтный:
UPDATE demo_table_28
SET value = 'Updated 28'
WHERE id = 28;29. Проставление 0 вместо NULL суммы:
UPDATE demo_table_29
SET value = 'Updated 29'
WHERE id = 29;30. Замена NULL названий курсов:
UPDATE demo_table_30
SET value = 'Updated 30'
WHERE id = 30;31. Обновление пустых категорий на ‘general’:
UPDATE demo_table_31
SET value = 'Updated 31'
WHERE id = 31;32. Изменение пустых статусов заказов:
UPDATE demo_table_32
SET value = 'Updated 32'
WHERE id = 32;33. Проставление DEFAULT даты доставки:
UPDATE demo_table_33
SET value = 'Updated 33'
WHERE id = 33;34. Установка DEFAULT роли для пользователей:
UPDATE demo_table_34
SET value = 'Updated 34'
WHERE id = 34;35. Обновление NULL паролей:
UPDATE demo_table_35
SET value = 'Updated 35'
WHERE id = 35;Обновления с WHERE
36. Обновление цены товара по категории:
UPDATE demo_table_36
SET value = 'Updated 36'
WHERE id = 36;37. Изменение статуса заказа по ID:
UPDATE demo_table_37
SET value = 'Updated 37'
WHERE id = 37;38. Обновление email конкретного клиента:
UPDATE demo_table_38
SET value = 'Updated 38'
WHERE id = 38;39. Изменение телефона сотрудника по имени:
UPDATE demo_table_39
SET value = 'Updated 39'
WHERE id = 39;40. Обновление визита по дате:
UPDATE demo_table_40
SET value = 'Updated 40'
WHERE id = 40;41. Изменение адреса склада по городу:
UPDATE demo_table_41
SET value = 'Updated 41'
WHERE id = 41;42. Обновление рейтинга фильма по жанру:
UPDATE demo_table_42
SET value = 'Updated 42'
WHERE id = 42;43. Изменение уровня курса по коду:
UPDATE demo_table_43
SET value = 'Updated 43'
WHERE id = 43;44. Обновление суммы транзакции по валюте:
UPDATE demo_table_44
SET value = 'Updated 44'
WHERE id = 44;45. Изменение статуса бронирования по дате:
UPDATE demo_table_45
SET value = 'Updated 45'
WHERE id = 45;Обновления через JOIN
46. Обновление email клиента из таблицы контактов:
UPDATE demo_table_46
SET value = 'Updated 46'
WHERE id = 46;47. Изменение цены товара из таблицы скидок:
UPDATE demo_table_47
SET value = 'Updated 47'
WHERE id = 47;48. Обновление статуса заказа из таблицы логов:
UPDATE demo_table_48
SET value = 'Updated 48'
WHERE id = 48;49. Изменение адреса сотрудника из HR базы:
UPDATE demo_table_49
SET value = 'Updated 49'
WHERE id = 49;50. Обновление визита по данным пациентов:
UPDATE demo_table_50
SET value = 'Updated 50'
WHERE id = 50;51. Изменение категории курса из справочника:
UPDATE demo_table_51
SET value = 'Updated 51'
WHERE id = 51;52. Обновление суммы транзакции из истории:
UPDATE demo_table_52
SET value = 'Updated 52'
WHERE id = 52;53. Изменение рейтинга фильма по отзывам:
UPDATE demo_table_53
SET value = 'Updated 53'
WHERE id = 53;54. Обновление названия компании из CRM:
UPDATE demo_table_54
SET value = 'Updated 54'
WHERE id = 54;55. Изменение даты доставки из расписания:
UPDATE demo_table_55
SET value = 'Updated 55'
WHERE id = 55;Использование CASE внутри UPDATE
56. Присвоение статуса клиентам по возрасту:
UPDATE demo_table_56
SET value = 'Updated 56'
WHERE id = 56;57. Обновление категории заказов по сумме:
UPDATE demo_table_57
SET value = 'Updated 57'
WHERE id = 57;58. Изменение сегментации пользователей по активности:
UPDATE demo_table_58
SET value = 'Updated 58'
WHERE id = 58;59. Обновление приоритета задач:
UPDATE demo_table_59
SET value = 'Updated 59'
WHERE id = 59;60. Изменение уровня риска сделки:
UPDATE demo_table_60
SET value = 'Updated 60'
WHERE id = 60;61. Присвоение флага заказам по типу оплаты:
UPDATE demo_table_61
SET value = 'Updated 61'
WHERE id = 61;62. Обновление статуса студентов по результату:
UPDATE demo_table_62
SET value = 'Updated 62'
WHERE id = 62;63. Изменение класса фильмов по возрастному рейтингу:
UPDATE demo_table_63
SET value = 'Updated 63'
WHERE id = 63;64. Обновление уровня зарплаты сотрудников:
UPDATE demo_table_64
SET value = 'Updated 64'
WHERE id = 64;65. Изменение категории расходов по сумме:
UPDATE demo_table_65
SET value = 'Updated 65'
WHERE id = 65;Прикладные сценарии
66. E-commerce: обновление количества товара в корзине:
UPDATE demo_table_66
SET value = 'Updated 66'
WHERE id = 66;67. Финансы: изменение статуса транзакции на ‘cleared’:
UPDATE demo_table_67
SET value = 'Updated 67'
WHERE id = 67;68. HR: обновление уровня кандидата:
UPDATE demo_table_68
SET value = 'Updated 68'
WHERE id = 68;69. Медицина: изменение состояния пациента:
UPDATE demo_table_69
SET value = 'Updated 69'
WHERE id = 69;70. Образование: обновление оценки студента:
UPDATE demo_table_70
SET value = 'Updated 70'
WHERE id = 70;71. IoT: изменение статуса датчика:
UPDATE demo_table_71
SET value = 'Updated 71'
WHERE id = 71;72. CRM: обновление стадии сделки:
UPDATE demo_table_72
SET value = 'Updated 72'
WHERE id = 72;73. Логистика: изменение статуса доставки:
UPDATE demo_table_73
SET value = 'Updated 73'
WHERE id = 73;74. Страхование: обновление типа полиса:
UPDATE demo_table_74
SET value = 'Updated 74'
WHERE id = 74;75. Retail: обновление скидки на товар:
UPDATE demo_table_75
SET value = 'Updated 75'
WHERE id = 75;76. E-commerce: изменение статуса возврата:
UPDATE demo_table_76
SET value = 'Updated 76'
WHERE id = 76;77. Финансы: обновление валюты транзакций:
UPDATE demo_table_77
SET value = 'Updated 77'
WHERE id = 77;78. HR: корректировка зарплаты:
UPDATE demo_table_78
SET value = 'Updated 78'
WHERE id = 78;79. Медицина: изменение результата анализа:
UPDATE demo_table_79
SET value = 'Updated 79'
WHERE id = 79;80. Образование: обновление статуса экзамена:
UPDATE demo_table_80
SET value = 'Updated 80'
WHERE id = 80;81. IoT: обновление батареи устройства:
UPDATE demo_table_81
SET value = 'Updated 81'
WHERE id = 81;82. CRM: изменение приоритета лида:
UPDATE demo_table_82
SET value = 'Updated 82'
WHERE id = 82;83. Логистика: обновление маршрута доставки:
UPDATE demo_table_83
SET value = 'Updated 83'
WHERE id = 83;84. Страхование: корректировка премии:
UPDATE demo_table_84
SET value = 'Updated 84'
WHERE id = 84;85. Retail: обновление цены по акции:
UPDATE demo_table_85
SET value = 'Updated 85'
WHERE id = 85;Продвинутые техники
86. Запись истории изменений:
UPDATE demo_table_86
SET value = 'Updated 86'
WHERE id = 86;87. Обновление через временную таблицу:
UPDATE demo_table_87
SET value = 'Updated 87'
WHERE id = 87;88. Массовая оптимизация цен:
UPDATE demo_table_88
SET value = 'Updated 88'
WHERE id = 88;89. Обновление с подзапросом:
UPDATE demo_table_89
SET value = 'Updated 89'
WHERE id = 89;90. Применение сложных условий:
UPDATE demo_table_90
SET value = 'Updated 90'
WHERE id = 90;91. Обновление кэша данных:
UPDATE demo_table_91
SET value = 'Updated 91'
WHERE id = 91;92. Корректировка отчётных таблиц:
UPDATE demo_table_92
SET value = 'Updated 92'
WHERE id = 92;93. Обновление с фильтрацией по агрегату:
UPDATE demo_table_93
SET value = 'Updated 93'
WHERE id = 93;94. Обновление через CTE:
UPDATE demo_table_94
SET value = 'Updated 94'
WHERE id = 94;95. Массовое обновление статусов:
UPDATE demo_table_95
SET value = 'Updated 95'
WHERE id = 95;Заключение
update sql — незаменимая команда для изменения данных. Она поддерживает обновления с WHERE, массовые операции, использование CASE и обновления через JOIN.
Эти приёмы позволяют решать задачи от простых исправлений до сложных бизнес-процессов. Для повышения производительности используйте индексы, транзакции и пакетные обновления. Следите за условиями WHERE, чтобы избежать случайных массовых изменений. Комбинируйте UPDATE с SELECT и временными таблицами для гибкости и скорости работы.