Условие SQL Case, примененное к дублированной строке SQL, не применяет данные к правильным строкам.MySql

Форум по Mysql
Anonymous
Условие SQL Case, примененное к дублированной строке SQL, не применяет данные к правильным строкам.

Сообщение Anonymous »

Я составляю еженедельный график. Я новичок. Мне удалось продублировать строку базы данных SQL в таблице, используя этот код ниже, и с помощью CASE удалось применить измененные данные к дублированным строкам. Так что я заставил его работать. Проблема, с которой я столкнулся, заключается в том, что данные не попадают в правильные столбцы дублированной строки. Буду признателен за совет.
Мой код
  • Я установил условие/случай: если дата начала недели в базе данных sql = переменная $dateone, то примените переменную $datethree. Я указал его, чтобы применить его к записи с идентификатором 184. Таким образом, запись с идентификатором 184 была продублирована и применена $datethree.
$dateone = "2026-03-02";
$datethree ="2026-03-16";

$sql = "INSERT INTO myrota (weekstart, shift, empid, name, mon, tue, wed,thu,fri, sat, sun)

SELECT shift, empid, name, mon, tue, wed ,thu, fri, sat, sun,

CASE
WHEN weekstart= '$dateone' THEN '$datethree'

ELSE 'do nothing'

END AS weekstart

FROM myrota

WHERE id = '184';
";

Результат в таблице SQL. Запись 183 продублирована и получила идентификатор 186, но данные для исправления столбцов в строке не поступили.
Id. Weekstart Shift Empid Name Mon Tue Wed Thu Fri Sat Sun
184 2026-03-02 A NB1 Mike Late Late Late Late Late Late Late
185 2026-03-09 B NB2 Jack Early Early Early Early Early Early Early
186 A NB1 Mike Late Late Late Late Late Late Late 2026-03-16


Подробнее здесь: https://stackoverflow.com/questions/799 ... a-to-corre

Вернуться в «MySql»