• ADADADADAD

    mysql怎么分组查询[ 建站问答 ]

    建站问答 时间:2024-12-01 19:00:48

    作者:文/会员上传

    简介:

    mysql分组查询的方法:使用GROUP BY语句进行分组,根据一个或多个列对结果集进行分组。具体操作步骤:可以使用GROUP BY语句进行分组,GROUP BY语句能够根据一个或多个列对结果集进

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    mysql分组查询的方法:使用GROUP BY语句进行分组,根据一个或多个列对结果集进行分组。

    具体操作步骤:

    可以使用GROUP BY语句进行分组,GROUP BY语句能够根据一个或多个列对结果集进行分组。

    示例:

    1.首先新建一个数据,例如将以下数据导入数据库中。

    SETNAMESutf8;

    SETFOREIGN_KEY_CHECKS=0;

    ------------------------------

    --Tablestructurefor`employee_tbl`

    ------------------------------

    DROPTABLEIFEXISTS`employee_tbl`;

    CREATETABLE`employee_tbl`(

    `id`int(11)NOTNULL,

    `name`char(10)NOTNULLDEFAULT'',

    `date`datetimeNOTNULL,

    `singin`tinyint(4)NOTNULLDEFAULT'0'COMMENT'登录次数',

    PRIMARYKEY(`id`)

    )ENGINE=InnoDBDEFAULTCHARSET=utf8;

    ------------------------------

    --Recordsof`employee_tbl`

    ------------------------------

    BEGIN;

    INSERTINTO`employee_tbl`VALUES('1','小明','2016-04-2215:25:33','1'),('2','小王','2016-04-2015:25:47','3'),('3','小丽','2016-04-1915:26:02','2'),('4','小王','2016-04-0715:26:14','4'),('5','小明','2016-04-1115:26:40','4'),('6','小明','2016-04-0415:26:54','2');

    COMMIT;

    SETFOREIGN_KEY_CHECKS=1;

    2.导入数据成功后,执行以下SQL语句查询相关数据信息。

    mysql>setnamesutf8;

    mysql>SELECT*FROMemployee_tbl;

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

    |id|name|date|singin|

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

    |1|小明|2016-04-2215:25:33|1|

    |2|小王|2016-04-2015:25:47|3|

    |3|小丽|2016-04-1915:26:02|2|

    |4|小王|2016-04-0715:26:14|4|

    |5|小明|2016-04-1115:26:40|4|

    |6|小明|2016-04-0415:26:54|2|

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

    6rowsinset(0.00sec)

    3.利用GROUP BY语句对数据表按名字进行分组,并统计每个人有多少条记录。

    mysql>SELECTname,COUNT(*)FROMemployee_tblGROUPBYname;

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

    |name|COUNT(*)|

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

    |小丽|1|

    |小明|3|

    |小王|2|

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

    3rowsinset(0.01sec)

    相关语句:

    使用WITH ROLLUP实现在分组统计数据基础上再进行相同的统计。

    比如对数据表按名字进行分组,再统计每个人登录的次数。

    mysql> SELECT name, SUM(singin) as singin_count FROM employee_tbl GROUP BY name WITH ROLLUP;

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

    |name|singin_count|

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

    |小丽|2|

    |小明|7|

    |小王|7|

    |NULL|16|

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

    4rowsinset(0.00sec)

    提示:记录NULL表示所有人的登录次数。

    mysql怎么分组查询.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysql