Примените условие SQL Case к дублированной строке SQL в том же операторе.MySql

Форум по Mysql
Ответить
Anonymous
 Примените условие SQL Case к дублированной строке SQL в том же операторе.

Сообщение Anonymous »

Я составляю еженедельную ротацию. Мне удалось продублировать строку базы данных SQL в таблице, используя этот код:
$test = "2026-03-02";
$sql = "INSERT INTO myrota (weekstart, shift, employid, name, mon, tue)
SELECT weekstart, shift, employid , name, mon, tue
FROM myrota
where weekstart = '$test'";

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

$datethree ="2026-03-16";
$datefour = "2026-03-23";

$sql = "INSERT INTO myrota (weekstart)
SELECT weekstart,
CASE
WHEN weekstart= '$dateone' THEN '$datethree'
WHEN weekstart= '$datetwo' THEN '$datefour'
ELSE 'empty'
END AS weekstart
FROM myrota ";


Подробнее здесь: https://stackoverflow.com/questions/799 ... -statement
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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