2014-10-13 4 views
-3

У меня есть эта следующая таблица:Записи, не сгруппированные по группе по предложению?

PKEY - ПВС

one - dfgf 
two - dg 
three - asf 
one - asarset 
three - se 

Запрос

select pkey,pval from dummy11 group by pkey,pval 

возвращает следующие выходные ..

pkey - pval 
three - asf 
one - asarset 
three - se 
one - dfgf 
two - dg 

Почему это не grouped by pkey,pval?

Я хочу, чтобы вывод о том, как он приходит с помощью order by

select pkey,pval from dummy11 order by pkey,pval 

Но разве это не то же самое, используя group by в этом случае?

+2

** ШОУ ** нам вход и желаемый результат. 'GROUP BY' и' ORDER' отличаются. Объясните словами, что вы пытаетесь сделать. –

+2

Основываясь на вашем вводе/выводе, они группируются по условию 'group by'. Вам нужно больше узнать о группировке. – zaratustra

+1

Это ** ** сгруппировано по 'pkey, pval' - это просто не * упорядочено * по этим столбцам. «Группа by» делает ***, а не сортирует выход. Вот для чего «порядок». *** *** *** способ получить результат в желаемом порядке - использовать 'order by'. Любой заказ, который вы видите * без * заказа ', просто совпадает. –

ответ

0
Why is it not grouped by pkey,pval ? 

Ans: Это группируется по, вы ожидали чего-то, что GROUP BY не делает.

I want the output as how it comes by using order by 

select pkey,pval from dummy11 order by pkey,pval 
But isn't that the same thing as using group by in this case? 

Ans: НЕТ, это не то же самое. ORDER BY сортирует выходные, GROUP BY не сортирует выходного

A GROUP BY пункт:

"groups a result into subsets that have matching values for one or more columns. " 

oracle docs

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