2014-02-13 2 views
-1

я имею этот вопрос:Группировка и Сортировка в том же выбрать

SELECT MODELLI.MOD_DESC, 
     COUNT(MOD_DESC) 
    FROM VEGA.DISTRIB AS DISTRIB, 
     VEGA.MODELLI AS MODELLI 
    WHERE DISTRIB.DIS_FLAG = 'M' 
    AND DISTRIB.DIS_MOD = MODELLI.MOD_COD 
    GROUP BY MODELLI.MOD_DESC 

Но я хочу иметь ORDER BY на MODELLI.MOD_DESC тоже.

Как я могу это сделать?

Спасибо.

+4

после группы по заказу mod_desc не работает ???? /? –

+0

Нет. Не работайте. Это проблема оракула db? – Alist3r

+0

Не могли бы вы решить, какая у вас БД? Oracle или MySQL? – smnbbrv

ответ

2

Попробуйте,

SELECT MODELLI.MOD_DESC, COUNT(MODELLI.MOD_DESC) 
FROM VEGA.DISTRIB DISTRIB, VEGA.MODELLI MODELLI 
WHERE DISTRIB.DIS_FLAG = 'M' AND DISTRIB.DIS_MOD = MODELLI.MOD_COD 
GROUP BY MODELLI.MOD_DESC ORDER BY MODELLI.MOD_DESC 

Он будет работать как предложено OP ..

Попробуйте сейчас ..

+0

Я получаю сообщение об ошибке. Я работаю над Oracle DB – Alist3r

+0

Какова ваша ошибка.? –

+0

System.Runtime.InteropServices.COMException: [Microsoft] [драйвер ODBC для Oracle] [Oracle] ORA-00923: FROM ключевое слово не найдено, где ожидалось – Alist3r

1
SELECT MODELLI.MOD_DESC, COUNT(MOD_DESC) 
FROM VEGA.DISTRIB AS DISTRIB, VEGA.MODELLI AS MODELLI 
WHERE DISTRIB.DIS_FLAG = 'M' AND DISTRIB.DIS_MOD = MODELLI.MOD_COD 
GROUP BY MODELLI.MOD_DESC 
order by MODELLI.MOD_DESC ASC 
+0

Я получаю сообщение об ошибке. Я работаю над Oracle DB – Alist3r

2

Вы можете использовать ORDER BY пункт сразу после пункта GROUP BY как,

SELECT MODELLI.MOD_DESC, 
     COUNT(MOD_DESC) 
FROM VEGA.DISTRIB DISTRIB, 
     VEGA.MODELLI MODELLI 
WHERE DISTRIB.DIS_FLAG = 'M' 
AND DISTRIB.DIS_MOD = MODELLI.MOD_COD 
GROUP BY MODELLI.MOD_DESC 
ORDER BY MODELLI.MOD_DESC; 
+0

Я получаю сообщение об ошибке. Я работаю над Oracle DB – Alist3r

+0

@ Alist3r, Покажи нам свою ошибку. – Dba

+0

System.Runtime.InteropServices.COMException: [Microsoft] [драйвер ODBC для Oracle] [Oracle] ORA-00923: ключевое слово FROM не найдено, где ожидалось – Alist3r

Смежные вопросы