查四種不同status的統計數量 以及 MYSQL中count函數的默認返回值問題

 遇到一個問題。在一個表中查四種不同status的記錄數
一開始想法是發四條SQL?或者做四個臨時表?仔細想想這樣不對,效率低下。
改用group by status,問題在於頁面需要的是四個狀態的統計值,只查count(id)等於只知道了value不知道對應key。
所以查status以及status的統計值。返回一個List<Map<String,object>>,遍歷後用key在代碼中判斷該key是否等於指定狀態,若等於,則該value就是是該status的統計值。

新手一隻,一開始會有這個糾結原因還是自己對應代碼和sql查詢的應用不夠靈活。吸取經驗。


ps:要注意的是count(id)默認返回的是Long類型,用Integer類型接收的時候如果強轉會報錯。
需要轉string再轉Integer:    Integer.valueOf(9999L.toString());
mybatis寫映射返回值int能接收,是因爲做了默認的類型轉換。 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章