• 技术文章 >数据库 >mysql教程

    mysql怎么统计查询结果

    青灯夜游青灯夜游2022-06-23 17:02:57原创529

    统计方法:1、用“COUNT(*)”统计全部查询结果,语法“SELECT COUNT(*) FROM 表名;”。2、用“COUNT(字段名)”统计非NULL的结果,语法“SELECT COUNT(列名)” FROM 表名;”。3、用“COUNT(DISTINCT 字段名)”统计去重的非NULL结果,语法“SELECT COUNT(DISTINCT 列名)” FROM 表名;”。

    本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

    在mysql中,可以使用COUNT()函数来统计查询结果。

    MySQL COUNT()函数

    COUNT()函数统计数据表中包含的记录行的总数,或者根据查询结果返回列中包含的数据行数

    COUNT()函数的返回类型为BIGINT。 如果没有找到匹配的行,则COUNT()函数返回0。

    COUNT()函数有三种语法:

    COUNT(*)
    COUNT(字段名)
    COUNT(DISTINCT 字段名)

    COUNT(*)

    COUNT(*)函数返回由SELECT语句返回的结果集中的行数。COUNT(*)函数计算包含NULL和非NULL值的行,即:所有行。

    如果使用COUNT(*)函数对表中的数字行进行计数,而不使用WHERE子句选择其他列,则其执行速度非常快。

    这种优化仅适用于MyISAM表,因为MyISAM表的行数存储在information_schema数据库的tables表的table_rows列中; 因此,MySQL可以很快地检索它。

    COUNT(列名)

    COUNT(字段名)返回不包含NULL值的行数。

    COUNT(DISTINCT 列名)

    COUNT(DISTINCT 字段名)返回不包含NULL值的唯一行数。

    MySQL COUNT示例

    -- create a demos table
    CREATE TABLE IF NOT EXISTS demos(
     id int auto_increment primary key,
     val int 
    );

    1.png

    -- insert some sample data
    INSERT INTO demos(val)
    VALUES(1),(1),(2),(2),(NULL),(3),(4),(NULL),(5);

    2.png

    -- select data from demos table
    SELECT * FROM demos;

    3.png

    SELECT COUNT(*) FROM demos;

    4.png

    可以添加一个WHERE子句来指定一个条件来计数,例如,只计算val列包含值等于2的行,使用以下查询:

    SELECT COUNT(*) FROM demos WHERE val = 2;

    5.png

    val列中的两个NULL值将被忽略。

    SELECT COUNT(DISTINCT val) FROM demos;

    6.png

    在计数中忽略两个重复值1、2和两个NULL值。

    【相关推荐:mysql视频教程

    以上就是mysql怎么统计查询结果的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:mysql
    上一篇:mysql如何增加唯一索引 下一篇:mysql怎么查询第几条数据
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• mysql怎么查询临时表• mysql存储过程中的循环语句有哪些• mysql分页查询怎么优化• sql与mysql有什么区别• mysql怎么关闭事务• mysql怎么查询第一条数据
    1/1

    PHP中文网