sql语句group by用法是什么?sql有哪些重要命令?

阳光 2022-04-06 23:49:04 java常见问答 9368

SQL 是用于管理关系数据库管理系统。 GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组。那sql语句group by用法是什么?下面来我们就来给大家讲解一下。

SQL GROUP BY 语法

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

演示数据库

在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 "Websites" 表的数据:

+ -- -- + -- -- -- -- -- -- -- + -- -- -- -- -- -- -- -- -- -- -- -- -- - + -- -- -- - + -- -- -- -- - +
|
id | name | url | alexa | country |
    + -- -- + -- -- -- -- -- -- -- + -- -- -- -- -- -- -- -- -- -- -- -- -- - + -- -- -- - + -- -- -- -- - +
    |
    1 | Google | https: //www.google.cm/    | 1     | USA     |
    |
    2 | 淘宝 | https: //www.taobao.com/   | 13    | CN      |
    |
    3 | 菜鸟教程 | http: //www.runoob.com/    | 4689  | CN      |
    |
    4 | 微博 | http: //weibo.com/         | 20    | CN      |
    |
    5 | Facebook | https: //www.facebook.com/ | 3     | USA     |
    |
    7 | stackoverflow | http: //stackoverflow.com/ |   0 | IND     |
    + -- -- + -- -- -- -- -- -- -- - + -- -- -- -- -- -- -- -- -- -- -- -- -- - + -- -- -- - + -- -- -- -- - +

下面是 "access_log" 网站访问记录表的数据:

mysql > SELECT * FROM access_log; +
-- -- - + -- -- -- -- - + -- -- -- - + -- -- -- -- -- -- +
|
aid | site_id | count | date |
    + -- -- - + -- -- -- -- - + -- -- -- - + -- -- -- -- -- -- +
    |
    1 | 1 | 45 | 2016 - 05 - 10 |
    |
    2 | 3 | 100 | 2016 - 05 - 13 |
    |
    3 | 1 | 230 | 2016 - 05 - 14 |
    |
    4 | 2 | 10 | 2016 - 05 - 14 |
    |
    5 | 5 | 205 | 2016 - 05 - 14 |
    |
    6 | 4 | 13 | 2016 - 05 - 15 |
    |
    7 | 3 | 220 | 2016 - 05 - 15 |
    |
    8 | 5 | 545 | 2016 - 05 - 16 |
    |
    9 | 3 | 201 | 2016 - 05 - 17 |
    + -- -- - + -- -- -- -- - + -- -- -- - + -- -- -- -- -- -- +
    9 rows in set(0.00 sec)

GROUP BY 简单应用

统计 access_log 各个 site_id 的访问量:

实例

SELECT site_id, SUM(access_log.count) AS nums
FROM access_log GROUP BY site_id;

执行以上 SQL 输出结果如下:

sql语句group by用法是什么?sql有哪些重要命令?.jpg

SQL GROUP BY 多表连接

下面的 SQL 语句统计有记录的网站的记录数量:

实例

SELECT Websites.name,COUNT(access_log.aid) AS nums FROM access_log
LEFT JOIN Websites
ON access_log.site_id=Websites.id
GROUP BY Websites.name;

执行以上 SQL 输出结果如下:

1.jpg

sql有哪些重要命令?

1. SELECT - 从数据库中提取数据;

2. UPDATE - 更新数据库中的数据;

3. DELETE - 从数据库中删除数据;

4. INSERT INTO - 向数据库中插入新数据;

5. CREATE DATABASE - 创建新数据库;

6. ALTER DATABASE - 修改数据库;

7. CREATE TABLE - 创建新表;

8. ALTER TABLE - 变更(改变)数据库表;

9. DROP TABLE - 删除表;

10. CREATE INDEX - 创建索引(搜索键);

11. DROP INDEX - 删除索引;

sql这些命令我们都要熟记,熟练使用这些命令能够使我们在开发中高效便捷,提高开发效率!最后大家如果想要了解更多其他工具教程知识,敬请关注奇Q工具网。

推荐阅读:

springmvc和servlet的区别是什么?Springmvc如何进行参数传递?

线程池面试题有哪些?线程池面试常见问题

fastjson如何转换为list?FastJson如何解析JSON?