Запрос SQL с фильтром подстроки для обновления данных - PullRequest
0 голосов
/ 19 сентября 2018

Как лучше всего использовать метод SUBSTRING для оператора и условия UPDATE!

UPDATE `store_results` SET `results_status` = "unpublished" WHERE CONCAT(SUBSTRING_INDEX(`results_trigger_on`,' ',1) AS resultdate FROM `store_results` HAVING resultdate BETWEEN '15/09/2018' AND '20/09/2018')

Какой будет идеальный запрос для достижения того же самого.

1 Ответ

0 голосов
/ 19 сентября 2018

Пожалуйста, прекратите манипуляции со строками, чтобы вычислить дату и время.Вместо этого используйте встроенные DateTime :

$startInKolkata = new \DateTime(
    '2018-09-19 09:00:00',
    new \DateTimeZone('Asia/Kolkata')
);

$endInWarsaw = new \DateTime(
    '2018-09-20 10:15:00', 
    new \DateTimeZone('Europe/Warsaw')
);

$dateDiff = $startInKolkata->diff($endInWarsaw);

printf(
    'Till end: %d day(s), %d hour(s), %d minute(s)',
    $dateDiff->d,
    $dateDiff->h,
    $dateDiff->i
);

Результатом метода diff() является класс DateInterval , который содержит всю информацию, которая вам когда-либо понадобитсяо разнице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...