execution
Компетентный
Есть таблица с 3 столбцами: С1 (int | AI) C2 (int) C3 (varchar) C4 (int)
Хочу сделать запрос на вывод строк где не повторяется столбец C4, и где С2 только равен '117', получить все записи и отсортировать всё это с конца на 10 штук по С1.
(Например:
1 строка: C4 = 6, C2 = '117'
2 строка: C4 = 6, C2 = '117',
3 строка: С4 = 5, C2 = '100',
4 строка: C4 = 8, C2 = '117';
Получается выводится только 2,4 строка т.к. они уникальные (не повторяются) и соответствует с значением '117').
Сделал так:
Получил ошибку:
Пробовал и так:
1.
2.
Но, всё равно такая ошибка. Что я делаю не так?
Хочу сделать запрос на вывод строк где не повторяется столбец C4, и где С2 только равен '117', получить все записи и отсортировать всё это с конца на 10 штук по С1.
(Например:
1 строка: C4 = 6, C2 = '117'
2 строка: C4 = 6, C2 = '117',
3 строка: С4 = 5, C2 = '100',
4 строка: C4 = 8, C2 = '117';
Получается выводится только 2,4 строка т.к. они уникальные (не повторяются) и соответствует с значением '117').
Сделал так:
PHP:
SELECT * FROM `table` WHERE `C2` = '117' GROUP BY `C4` HAVING COUNT(`C4`) = 1 ORDER BY `C1` DESC LIMIT 10
PHP:
#1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column '######.table.C1' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
1.
PHP:
SELECT * FROM `table` WHERE `C2` = '117' GROUP BY `C4` HAVING COUNT(*) = 1 ORDER BY `C1` DESC LIMIT 10
PHP:
SELECT DISTINCT С4 FROM table WHERE C2= 117 ORDER BY C1 DESC LIMIT 10
