一般可用Group 子句+ SQL聚合函數(shù)獲取分類匯總信息
創(chuàng)新互聯(lián)自2013年起,先為潼關(guān)等服務(wù)建站,潼關(guān)等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為潼關(guān)企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
例如下列分組匯總SQL語句,返回本月每個產(chǎn)品類別的銷售總金額:
select 產(chǎn)品類別,sum(單價*數(shù)量) as 銷售金額 from 銷售記錄
where Date_Format(銷售日期,'%Y%m')=Date_Format(now(),'%Y%m')
group by 產(chǎn)品類別;
select?c,count(b)?from?table_name?group?by?c
c,及每個C對應(yīng)的元素數(shù)量
分組排序的地方,你是想做成什么樣子?
select?*?from?table_name?order?by?c,a?asc
這個樣子嗎?
至于查詢性能,你做一個索引就OK了
select name,desc,count(desc) as c from tmp_table group by name,desc order by c desc limit 9;
把name放在前面就是優(yōu)先給name排序,name一樣的就按后面的desc排序。
這個句子就能滿足你的要求。
3.以count(desc)的多少排列name;
不知道這句話什么意思。不過對你想要的結(jié)果沒有什么影響。
另外,列名不要用desc。desc 是數(shù)據(jù)庫中的一個關(guān)鍵字。原則上最好不要用來做列名。
------------------------補充-----------------------
滿足你的第三個條件也很容易,
group by name,desc 變成
group by name,count(desc)就可以了
你這樣這分類是麻煩的,你可以在訂單表里面增加一個字段來表示訂單正常和訂單需要維修,維修后你只要改這個字段的就可以了么