2016-04-09 32 views
0

GROUP BY X kullanan bir SELECT var. Projeksiyonda SUM kullanır. Bu SUM'a göre sıralama yapmanın bir yolu var mı? Sonuçlar tablosunda en yüksek değere sahip grup sonucu ilk olmalıdır. Her bir grup tamamlandığında, çıktı ve gitmiş olduğu için bu SUM'a göre sıralama yapmanın hiçbir yolu olmadığından şüpheleniyorum; sıralamak için herhangi bir "koleksiyon" yoktur. Burada yapmak zorunda olduğum tamamen farklı bir şey var. Herhangi bir ipin var mı?GROUP BY select ile projeksiyonun SUM'una göre sıralama yapabilir misiniz?

Teşekkür ederiz.

(acemi)

+0

. SUM veya başka bir agrega ne olursa olsun. –

cevap

0
I'm not sure you meant this but here is an example 

assume that there is data in a table which shows payments people have made to a bank. 
But people pay different money in different times. 

*id* *payment* *time* 
1  10  01 04 2016 
2  20  01 02 2016 
1  35  14 03 2016 
3  22  21 01 2016 
2  50  01 04 2016 


Now you want to calculate who has paid max money. 

SELECT person_id, MAX(payment) AS totalPayment 
from payments 
group by person_id 
ORDER BY totalPayment DESC 
+0

Ahhhh .. DOH. İkinize de teşekkürler. Bazen sadece çok açık. Tekrar teşekkürler. – user116032

+0

Rica ederim. Yardım ettiğim için mutluyum. Pratik yapmak, sql sorgularını yönetmek için gerçekten yararlıdır. –

1

Birazdan sorunuzu anlamak, cevap oldukça basit: Hiçbir sorunları ile gruplama sonra agrega tarafından sipariş edebilirsiniz

SELECT customer, SUM(amount) FROM mytable GROUP BY customer ORDER BY SUM(amount);