大家好!我是黃啊碼,上節課留的作業大家都做了嗎?沒做的話回去做完再來聽課。 好了,先來解答上節課留下的問題: 我們在資料庫表中新增一列user_height表示身高,然後拿到所有數據: 我們如果單單用user_age來分組看看結果如何: 你:這也太簡單了吧,我來: select * from use ...
大家好!我是黃啊碼,上節課留的作業大家都做了嗎?沒做的話回去做完再來聽課。
好了,先來解答上節課留下的問題:
我們在資料庫表中新增一列user_height表示身高,然後拿到所有數據:
我們如果單單用user_age來分組看看結果如何:
你:這也太簡單了吧,我來:
select * from user_info group by user_age;
你:這。。。好像跟我想象的結果不同;
黃啊碼:好玩嗎?驚不驚喜,意不意外?
咱們不直接說答案,就講講為啥這樣,如果你英語水平很一般,那咱們直接藉助翻譯工具:
這翻譯水平,牆都不得不扶。
我來總結一下吧:簡而言之就是這裡邊user_id不是聚合列,在功能上也不是groug by所需要的欄位。
你:user_id不行?那user_name呢?
select user_name from user_info group by user_age;
黃啊碼:user_name也不行,就算天王老子來了也不行。
你:那user_age總行了吧?
黃啊碼:我發覺大聰明最近有長進了
select user_age from user_info group by user_age;
確實是可以的,這裡就相當於把user_age當成聚合列來使用。
你:哈哈哈,終於讓我做對了一次
黃啊碼:是嗎?那昨天的作業該咋做
你:您請,我怕說錯挨揍
如果使用多個欄位進行分組的話,很簡單,直接在group by後邊加上另外的欄位即可。
你:這麼簡單,早知道。。。
黃啊碼:啪,哪有那麼多早知道。
select user_age from user_info group by user_age,user_height;
黃啊碼:如果想要把user_height這個欄位也查出來呢?該咋辦?
你:簡單,那就在from前邊把user_height加上不就行了。
黃啊碼:啪,沒白教你,打你一下當做賞你了。
你:【下次再也不出風頭了】
select user_age,user_height from user_info group by user_age,user_height;
好了,多個列進行group by分組的就講到這裡。周末了,就不消耗大家的娛樂時間了,我們下周再見,別忘了一鍵三連哦,當做給黃啊碼深夜碼字的鼓勵吧,謝啦。
我是黃啊碼,碼字的碼,退。。。退。。。退。。。朝!