В запросе SQL отсутствует предложение Where

Я отправляю запрос SQL от клиента к базе данных MySQL. Когда я запускаю запрос в MySQL, результат правильный.

Результат запроса неверен при отправке от клиента. Последнее предложение WHERE отсутствует.

Исходный запрос выглядит так:

SELECT SUM(Second_In_State) From 
(SELECT 
    Time_Stamp, 
    State,
    TIMESTAMPDIFF(SECOND, LAG(Time_Stamp) OVER(ORDER BY Time_Stamp), Time_Stamp)
AS Second_In_State
FROM db.xyz_1_state
ORDER BY Time_Stamp) AS T
Where State = 1;

Результат - количество секунд, где State = 1 (желаемый результат)

В журнале запросов MySQL запрос выглядит так:

SELECT SUM(Second_In_State) From 
(SELECT 
    Time_Stamp, 
    State,
    TIMESTAMPDIFF(SECOND, LAG(Time_Stamp) OVER(ORDER BY Time_Stamp), Time_Stamp)
AS Second_In_State
FROM db.xyz_1_state
ORDER BY Time_Stamp) AS T

Результат - общее количество секунд во всех состояниях. (Неправильный результат)

Есть предложения, почему отсутствует последняя строка?

Предполагая, что выходным данным вашего журнала можно верить, единственный способ увидеть версию запроса с отсутствующим предложением WHERE - это если ваш код выполняет этот же запрос.

Tim Biegeleisen 06.04.2021 09:43

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

D-Shih 06.04.2021 09:43

Я попытался немного лучше объяснить проблему. У меня вопрос: почему отсутствует последняя строка, когда запрос отправляется от клиента?

jthyge 06.04.2021 10:10

Попробуйте сделать свой последний Where в верхнем регистре (WHERE), если есть небольшая вероятность, что это проблема. Я не ожидаю, что это произойдет, но в зависимости от вашей настройки и среды есть небольшая вероятность, что причина в этом.

ed2 06.04.2021 10:12

«Я отправляю запрос SQL от клиента» - какой клиент (командная строка mysql?)? 'to mysql' - где (тот же сервер, удаленный сервер)

P.Salmon 06.04.2021 10:15

Я немного подробнее рассмотрел проблему. И нашел журнал клиента. Клиент не отправляет последнюю строку запроса в строке подключения. Заказчик - Machine SCADA Expert. Я должен связаться с их службой поддержки.

jthyge 06.04.2021 10:27
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
1
6
47
1

Ответы 1

Спасибо за ваши комментарии.

Я обнаружил, что клиент ограничен по количеству строк. Так что при сохранении последняя строка удаляется.

Таким образом, преобразование запроса в одну строку решило проблему.

Спасибо.

Другие вопросы по теме

Похожие вопросы

Как получить идентификатор из файла CSV и выполнить команду обновления mysql для обновления большого количества обновлений в таблице mysql
Ошибка соединителя python mariadb при получении результатов из DATETIME со значением NULL
У вас есть ошибка в синтаксисе SQL; соответствует версии вашего сервера MySQL для правильного синтаксиса для использования рядом с '2021-04-06', 'Нет') 'в строке 2
Как изменить character_set_client и character_set_results с помощью клиентской кодировки вместо изменения my.ini
Запрос Mysql, получение расстояния с использованием текущей широты и долготы пользователя, группировка по ветке и, наконец, получение ближайшего филиала магазина
<br /> <b> Примечание </b>: неопределенный индекс: x в <b> C: \ xampp \ htdocs \ Phpproject \ brand.php </b> в строке <b> 3 </b> <br / > []
Как редактировать некоторые строки поля на основе значения из нескольких полей в mysql?
Разница между created_at, созданным выражением mysql, и PHP laravel
Почему я не получаю ответ Json? Я хочу распечатать всю информацию. Но он показывает только идентификатор
XMLHttpRequest () - Не удалось загрузить ресурс: net :: ERR_CONNECTION_REFUSED