Разница во времени Mysql не работает Версия клиента MySQL: 3.23.49 - PullRequest
2 голосов
/ 31 октября 2019

Функция TIMEDIFF не работает. Я хочу получить разницу во времени в типе столбца = 1, если тип столбца = 1 и old_value = 10 Мои 2 запроса:

SELECT date_modified
FROM mantis_bug_history_table
WHERE bug_id =75616
AND TYPE =0
AND old_value =10
ORDER BY date_modified DESC 

output
------
2019-10-28 10:26:57

SELECT date_modified
FROM mantis_bug_history_table
WHERE bug_id =75616
AND TYPE =1
ORDER BY date_modified DESC

output
------
2019-10-28 10:15:04

[введите описание изображения здесь][1] Ошибка SQL-запроса: Документация

SELECT TIMEDIFF(
SELECT date_modified
FROM mantis_bug_history_table
WHERE bug_id =75616
AND TYPE =1
ORDER BY date_modified DESC ,
SELECT date_modified
FROM mantis_bug_history_table
WHERE bug_id =75616
AND TYPE =0
AND old_value =10
ORDER BY date_modified DESC )

MySQL said: Documentation

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(SELECT date_modified
FROM mantis_bug_history_table
WHERE bu

Приведенный выше запрос пытался получить разницу во времени

1 Ответ

1 голос
/ 31 октября 2019

Добавьте круглые скобки (...subquery) вокруг ваших подзапросов перед передачей в качестве аргумента TIMEDIFF:

(SELECT date_modified FROM mantis_bug_history_table WHERE bug_id =75616 AND TYPE =0 AND old_value =10 ORDER BY date_modified DESC )

(SELECT date_modified FROM mantis_bug_history_table WHERE bug_id =75616 AND TYPE =1 ORDER BY date_modified DESC)

Окончательный запрос:

 SELECT TIMEDIFF((SELECT date_modified FROM mantis_bug_history_table WHERE bug_id =75616 AND TYPE =0 AND old_value =10 ORDER BY date_modified DESC ),
 (SELECT date_modified FROM mantis_bug_history_table WHERE bug_id =75616 AND TYPE =1 ORDER BY date_modified DESC));

Обратите внимание: Функция TIMEDIFF ожидает только одну строку + столбец, возвращаемый каждым подзапросом, если в будущем возможно иметь несколько, тогда рассмотрите добавление LIMIT 1 с обоими.

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