Цель: Присоедините две таблицы, упорядоченные по одному столбцу (ui.UNO), а затем GROUP BY (images.INO).Запрос на несколько таблиц ORDER BY Then GROUP BY
Проблема: ORDER BY возвращает повторяющиеся результаты, как и следовало ожидать, но поскольку я пытаюсь выполнить ORDER BY, чтобы отобразить текущие изображения пользователей, если i GROUP BY показан только первый результат, независимо от того, связано ли оно с другого пользователя.
например: В следующей таблице я ищу второй результат, но если я использую GROUP BY, будет отображаться только первый результат, и любые связанные данные (ui.IUTally) будут ошибочными. Спасибо за вашу помощь заранее.
Images
INO | IName | IDescription
3 | Sports | "......"
3 | Sports | "......"
UI
UNO | INO | IUTally
4 | 3 | 12
7 | 3 | 6
.
$query="
SELECT images.INO, images. IName, ui. UNO, ui. IUTally
FROM images
LEFT JOIN ui ON images. INO = ui. INO
GROUP BY images. INO
ORDER BY ui. UNO = $uno DESC";
Images/UI
INO | IName | UNO | INO | IUTally
3 | Sports | 4 | 3 | 12
3 | Sports | 7 | 3 | 6
Я думаю, вы смешиваете предложение GROUP BY и 'WHERE'. Поскольку вы заказываете «ui.UNO = $ uno», он сначала проверяет, истинно это или нет, а затем возвращает 1 или 0. –
Что вы ожидали результата? – Shafeeque
Привет, Марти, я не уверен, что получаю то, что вы на 100%, если я не использую GROUP BY, я получаю повторяющиеся результаты, единственная причина, по которой я думаю о GROUP BY, состоит в том, что она делает то, что мне нужно, но не в сочетании с ORDER BY, так что это похоже либо или, либо альтернатива. Спасибо за вашу помощь. – user2784408