я действительно заблокирован в преклонном запросе, если кто-то может помочь мнеMYSQL - сравнение между 5 датами и порядком последнего
У меня есть таблицы MySQL, который выглядит следующим образом:
клиенты (идентификатор, appointment_date1, appointment_date2, appointment_date3, appointment_date4)
Я ищу запрос, перечисляет мне, что следующее самым недавнее назначение
Перед тем, как сделать этот запрос:
SELECT CASE
WHEN (customers.appointment_date1 != '0000-00-00' AND DATE(customers.appointment_date1) >= CURDATE()) THEN customers.appointment_date1
WHEN (customers.appointment_date2 != '0000-00-00' AND DATE(customers.appointment_date2) >= CURDATE()) THEN customers.appointment_date2
WHEN (customers.appointment_date3 != '0000-00-00' AND DATE(customers.appointment_date3) >= CURDATE()) THEN customers.appointment_date3
WHEN (customers.appointment_date4 != '0000-00-00' AND DATE(customers.appointment_date4) >= CURDATE()) THEN customers.appointment_date4
END as appointment
ORDER BY appointment ASC
Но это неправильно, оно работает неправильно.
Любой может помочь?
Благодаря
вам нужно сделать следующий самое недавнее назначение или список следующих последних назначений? – Loufylouf
Вам нужно больше работать, не нормализуя эту структуру. Попробуйте использовать новую таблицу 'tasksments', а не использовать кучу столбцов в таблице клиентов. – Devon
Что значит «не работает правильно»? Не могли бы вы предоставить образцы данных, ожидаемый результат и текущий результат? – piotrgajow