最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL高級(jí)查詢之與Group By集合使用介紹

 更新時(shí)間:2013年08月19日 21:42:45   作者:  
在MySQL中,你可以獲取表達(dá)式組合的連接值。你可以使用DISTINCT刪去重復(fù)值。假若你希望多結(jié)果值進(jìn)行排序,則應(yīng)該使用 ORDER BY子句

GROUP_CONCAT

mysql> SELECT student_name,
    ->     GROUP_CONCAT(test_score)
    ->     FROM student
    ->     GROUP BY student_name;

Or:

mysql> SELECT student_name,
    ->     GROUP_CONCAT(DISTINCT test_score
    ->               ORDER BY test_score DESC SEPARATOR ' ')
    ->     FROM student
    ->     GROUP BY student_name;

在MySQL中,你可以獲取表達(dá)式組合的連接值。你可以使用DISTINCT刪去重復(fù)值。假若你希望多結(jié)果值進(jìn)行排序,則應(yīng)該使用  ORDER BY子句。若要按相反順序排列,將 DESC (遞減) 關(guān)鍵詞添加到你要用ORDER BY 子句進(jìn)行排序的列名稱中。默認(rèn)順序?yàn)樯?;可使用ASC將其明確指定。   SEPARATOR 后面跟隨應(yīng)該被插入結(jié)果的值中間的字符串值。默認(rèn)為逗號(hào) (‘,')。通過(guò)指定SEPARATOR '' ,你可以刪除所有分隔符。

PS:就是可以在一個(gè)語(yǔ)句中得到 GROUP BY 被 聚合的項(xiàng)的每個(gè)子值的一個(gè)組合的字符串

 2 WITH ROLLUP

GROUP BY子句允許一個(gè)將額外行添加到簡(jiǎn)略輸出端 WITH ROLLUP 修飾符。這些行代表高層(或高聚集)簡(jiǎn)略操作。ROLLUP 因而允許你在多層分析的角度回答有關(guān)問(wèn)詢的問(wèn)題

或者你可以使用 ROLLUP, 它能用一個(gè)問(wèn)詢提供雙層分析。將一個(gè) WITH ROLLUP修飾符添加到GROUP BY 語(yǔ)句,使詢問(wèn)產(chǎn)生另一行結(jié)果,該行顯示了所有年份的總價(jià)值:

mysql> SELECT year, SUM(profit) FROM sales GROUP BY year WITH ROLLUP;

+------+-------------+

| year | SUM(profit) |

+------+-------------+

| 2000 |        4525 |

| 2001 |        3010 |

| NULL |        7535 |

+------+-------------+

總計(jì)高聚集行被年份列中的NULL值標(biāo)出。

當(dāng)有多重 GROUP BY 列時(shí),ROLLUP產(chǎn)生的效果更加復(fù)雜。這時(shí),每次在除了最后一個(gè)分類(lèi)列之外的任何列出現(xiàn)一個(gè) “break” (值的改變) ,則問(wèn)訊會(huì)產(chǎn)生一個(gè)高聚集累計(jì)行。

例如,在沒(méi)有 ROLLUP的情況下,一個(gè)以年、國(guó)家和產(chǎn)品為基礎(chǔ)的關(guān)于 sales 表的一覽表可能如下所示:

mysql> SELECT year, country, product, SUM(profit)

    -> FROM sales

    -> GROUP BY year, country, product;

+------+---------+------------+-------------+

| year | country | product    | SUM(profit) |

+------+---------+------------+-------------+

| 2000 | Finland | Computer   |        1500 |

| 2000 | Finland | Phone      |         100 |

| 2000 | India   | Calculator |         150 |

| 2000 | India   | Computer   |        1200 |

| 2000 | USA     | Calculator |          75 |

| 2000 | USA     | Computer   |        1500 |

| 2001 | Finland | Phone      |          10 |

| 2001 | USA     | Calculator |          50 |

| 2001 | USA     | Computer   |        2700 |

| 2001 | USA     | TV         |         250 |

+------+---------+------------+-------------+

表示總值的輸出結(jié)果僅位于年/國(guó)家/產(chǎn)品的分析級(jí)別。當(dāng)添加了 ROLLUP后, 問(wèn)詢會(huì)產(chǎn)生一些額外的行:

mysql> SELECT year, country, product, SUM(profit)

    -> FROM sales

    -> GROUP BY year, country, product WITH ROLLUP;

+------+---------+------------+-------------+

| year | country | product    | SUM(profit) |

+------+---------+------------+-------------+

| 2000 | Finland | Computer   |        1500 |

| 2000 | Finland | Phone      |         100 |

| 2000 | Finland | NULL       |        1600 |

| 2000 | India   | Calculator |         150 |

| 2000 | India   | Computer   |        1200 |

| 2000 | India   | NULL       |        1350 |

| 2000 | USA     | Calculator |          75 |

| 2000 | USA     | Computer   |        1500 |

| 2000 | USA     | NULL       |        1575 |

| 2000 | NULL    | NULL       |        4525 |

| 2001 | Finland | Phone      |          10 |

| 2001 | Finland | NULL       |          10 |

| 2001 | USA     | Calculator |          50 |

| 2001 | USA     | Computer   |        2700 |

| 2001 | USA     | TV         |         250 |

| 2001 | USA     | NULL       |        3000 |

| 2001 | NULL    | NULL       |        3010 |

| NULL | NULL    | NULL       |        7535 |

+------+---------+------------+-------------+

當(dāng)你使用 ROLLUP時(shí), 你不能同時(shí)使用 ORDER BY子句進(jìn)行結(jié)果排序。換言之, ROLLUP 和ORDER BY 是互相排斥的。然而,你仍可以對(duì)排序進(jìn)行一些控制。在 MySQL中, GROUP BY 可以對(duì)結(jié)果進(jìn)行排序,而且你可以在GROUP BY列表指定的列中使用明確的 ASC和DESC關(guān)鍵詞,從而對(duì)個(gè)別列進(jìn)行排序。 (不論如何排序被ROLLUP添加的較高級(jí)別的總計(jì)行仍出現(xiàn)在它們被計(jì)算出的行后面)。

LIMIT可用來(lái)限制返回客戶端的行數(shù)。LIMIT 用在 ROLLUP后面, 因此這個(gè)限制 會(huì)取消被ROLLUP添加的行

相關(guān)文章

  • MySQL數(shù)據(jù),查詢QPS,TPS數(shù)據(jù)方式

    MySQL數(shù)據(jù),查詢QPS,TPS數(shù)據(jù)方式

    文章詳細(xì)介紹了查詢MySQL數(shù)據(jù)庫(kù)QPS和TPS的方法和工具,包括直接通過(guò)命令行、PerformanceSchema、mysqladmin、Prometheus、自動(dòng)化腳本等,同時(shí),還提供了優(yōu)化建議,如索引優(yōu)化、SQL調(diào)優(yōu)、事務(wù)控制和配置調(diào)優(yōu)
    2025-02-02
  • Linux MYSQL5.7.23 rpm安裝(附帶安裝包)教程

    Linux MYSQL5.7.23 rpm安裝(附帶安裝包)教程

    RPM是一種軟件包管理系統(tǒng),常用于基于Red Hat的Linux發(fā)行版,如Fedora和CentOS,它允許用戶通過(guò)預(yù)編譯的二進(jìn)制包快速安裝和管理軟件,這篇文章給大家介紹Linux mysql5.7.23 rpm安裝(附帶安裝包)教程,感興趣的朋友一起看看吧
    2023-12-12
  • MySQL數(shù)據(jù)庫(kù)中存儲(chǔ)圖片和讀取圖片的操作代碼

    MySQL數(shù)據(jù)庫(kù)中存儲(chǔ)圖片和讀取圖片的操作代碼

    在MySQL數(shù)據(jù)庫(kù)中存儲(chǔ)圖片通常有兩種主要方式:將圖片以二進(jìn)制數(shù)據(jù)(BLOB 類(lèi)型)直接存儲(chǔ)在數(shù)據(jù)庫(kù)中,或者將圖片文件存儲(chǔ)在服務(wù)器文件系統(tǒng)上,而在數(shù)據(jù)庫(kù)中存儲(chǔ)圖片的路徑或URL,以下是這兩種方法的詳細(xì)解釋,包括存儲(chǔ)和讀取操作,需要的朋友可以參考下
    2024-11-11
  • MySql中的存儲(chǔ)引擎和索引

    MySql中的存儲(chǔ)引擎和索引

    這篇文章主要介紹了MySql中的存儲(chǔ)引擎和索引,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • CentOS7下 MySQL定時(shí)自動(dòng)備份的實(shí)現(xiàn)方法

    CentOS7下 MySQL定時(shí)自動(dòng)備份的實(shí)現(xiàn)方法

    這篇文章主要介紹了CentOS7 下MySQL定時(shí)自動(dòng)備份的實(shí)現(xiàn)方法,主要實(shí)現(xiàn)了數(shù)據(jù)庫(kù)備份,清理過(guò)期備份文件功能,需要的朋友可以參考下
    2019-12-12
  • Prometheus 插件mysql_exporter安裝過(guò)程

    Prometheus 插件mysql_exporter安裝過(guò)程

    mysql_exporter是用來(lái)收集MysQL或者M(jìn)ariadb數(shù)據(jù)庫(kù)相關(guān)指標(biāo)的,mysql_exporter需要連接到數(shù)據(jù)庫(kù)并有相關(guān)權(quán)限,這篇文章主要介紹了Prometheus插件安裝(mysql_exporter),需要的朋友可以參考下
    2023-06-06
  • 設(shè)置mysql5.7編碼集為utf8mb4的方法

    設(shè)置mysql5.7編碼集為utf8mb4的方法

    移動(dòng)端的表情或者一些emoji是4字節(jié)的,但是utf-8是3字節(jié)的,這篇文章主要介紹了設(shè)置mysql5.7編碼集為utf8mb4的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • MySQL插入json問(wèn)題

    MySQL插入json問(wèn)題

    今天小編就為大家分享一篇關(guān)于MySQL插入json問(wèn)題,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • MySQL 的覆蓋索引與回表的使用方法

    MySQL 的覆蓋索引與回表的使用方法

    這篇文章主要介紹了MySQL 的覆蓋索引與回表的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • MySQL5.6基于GTID的主從復(fù)制

    MySQL5.6基于GTID的主從復(fù)制

    這篇文章主要介紹了MySQL5.6基于GTID的主從復(fù)制的相關(guān)資料,需要的朋友可以參考下
    2016-02-02

最新評(píng)論

樟树市| 迭部县| 泾源县| 绥江县| 印江| 达拉特旗| 夏邑县| 雷州市| 启东市| 乌审旗| 麻阳| 广平县| 酒泉市| 洛宁县| 阿拉善左旗| 长治市| 旺苍县| 麻城市| 江华| 天门市| 织金县| 辽阳市| 鄂伦春自治旗| 禄劝| 大兴区| 寿阳县| 延吉市| 宁明县| 德钦县| 织金县| 含山县| 安远县| 崇明县| 龙南县| 秀山| 刚察县| 长白| 汝南县| 通州市| 贞丰县| 临泉县|