У меня есть этот запрос в моей базе данных MySQLMySQL проходит многократный WHERE условие
SELECT * FROM tabelXYZ
WHERE ((itemX BETWEEN 240 AND 300)
AND (ItemY BETWEEN 180 AND 200)
AND (ItemZ BETWEEN 70 AND 130))
GROUP BY ItemX ASC
LIMIT 50
и у меня есть это 9 результаты:
240 - 195 - 130
250 - 195 - 130
255 - 185 - 90
260 - 195 - 130
265 - 200 - 125
270 - 195 - 130
280 - 195 - 130
290 - 185 - 100
300 - 195 - 130
моя проблема, я смотрю на этот пункт
240 - 180 - 70
Я могу найти этот результат только в том случае, если этот запрос нужен (малый диапазон для itemY, 190 вместо 200)
SELECT * FROM tabelXYZ
WHERE ((itemX BETWEEN 240 AND 300)
AND (ItemY BETWEEN 180 AND 190)
AND (ItemZ BETWEEN 70 AND 130))
GROUP BY ItemX ASC
LIMIT 50
после этого запроса я Получать этот результат:
240 - 180 - 70
250 - 180 - 70
255 - 185 - 90
260 - 180 - 70
270 - 180 - 70
280 - 180 - 70
290 - 185 - 100
300 - 180 - 70
240 - 180 - 70
Я знаю, что я делаю что-то неправильно, но я не знаю, что , потому что это дает мне разные результаты в первом запросе хотя он должен включать результаты второго запроса
Я думаю, возникает ошибка, потому что ИНЕКЕ
Почему вы делаете 'GROUP BY ItemX ASC'? Это «скрывает» некоторые строки, группируя их по строкам с тем же «ItemX». –
Мне непонятно, каков ваш ожидаемый результат. –
Другими словами, каков ваш ожидаемый результат? Мы можем объяснить результаты, но мы не сможем предоставить решение, пока вы не покажете нам, что вы пытаетесь сделать. Я проголосую, пока вы не улучшите свой вопрос. –