社区
MySQL
帖子详情
SELECT COUT(主键)、count(1)、count(*)的区别
你们都是坏人
2008-09-19 06:10:02
SELECT COUT(主键)、count(1)、count(*)的区别
...全文
342
8
打赏
收藏
SELECT COUT(主键)、count(1)、count(*)的区别
SELECT COUT(主键)、count(1)、count(*)的区别
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiang3630
2008-10-16
打赏
举报
回复
增加一条有NULL的记录测试一下就知道
测了,都一样!50000条数据
WWWWA
2008-09-22
打赏
举报
回复
增加一条有NULL的记录测试一下就知道
wwwwb
2008-09-22
打赏
举报
回复
如果只是主键,那么3个SQL语句结果是一致的,因为主键不能为NULL,如是其它字段,且有NULL的话,结果是
有区别的
wwwwb
2008-09-22
打赏
举报
回复
不是吧,COUNT(*)count(1)是算NULL行的,其它不算NULL
zhifeiji007
2008-09-21
打赏
举报
回复
select cout(主键),好像没有见过。
其他两个能得出相同结果。
懒得去死
2008-09-19
打赏
举报
回复
效果是一样的,性能也没有啥区别!
随风醉舞
2008-09-19
打赏
举报
回复
返回table表里面的记录总数
select count(1) from table的效率更好。
fcoolx
2008-09-19
打赏
举报
回复
根据explian 得出结论 没区别
mysql> explain select count(1) from table1;
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
| 1 | SIMPLE | NULL | NULL | NULL | NULL | NULL | NULL | NULL | Select tables optimized away |
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
1 row in set (0.00 sec)
mysql> explain select count(*) from table1;
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
| 1 | SIMPLE | NULL | NULL | NULL | NULL | NULL | NULL | NULL | Select tables optimized away |
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
1 row in set (0.00 sec)
mysql> explain select count(id) from table1;
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
| 1 | SIMPLE | NULL | NULL | NULL | NULL | NULL | NULL | NULL | Select tables optimized away |
+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+
HackerRank:该存储库将包含我接受的C ++ 14和MySQL SQL的HackerRank解决方案
2. **查询操作**:
SELECT
语句是SQL中最常用的,涉及子查询、联接(JOIN)、聚合函数(
COUNT
、SUM、AVG等)、分组(GROUP BY)、排序(ORDER BY)等。 3. **数据库设计**: 理解关系数据库模型,包括实体、属性和关系...
select
count
(1) 与
select
count
(*)简析
一般情况下,
Select
Count
(*)和
Select
Count
(1)两着返回结果是一样的 假如表沒有
主键
(Primary key), 那么
count
(1)比
count
(*)快, 如果有
主键
的話,那
主键
作为
count
的条件时候
count
(
主键
)最快 如果你的...
深入分析:mysql统计条数
count
(*)、
count
(
主键
)、
cout
(1)、
count
(二级索引字段)、
count
(普通字段)性能比较
count
(*) =
count
(最短非空索引字段) ≈
count
(1) >
count
(比
主键
短的非空索引字段) >
count
(
主键
) >
count
(普通索引字段) >
count
(普通字段) 看到这个结论,可能有人会说卧槽 ,这是什么玩意,那么记住...
SELECT
COUNT
(*)和
SELECT
COUNT
(1)效率问题
SELECT
COUNT
(*)和
SELECT
COUNT
(1)都是对所有结果进行
COUNT
。
COUNT
(*)和
COUNT
(1)本质上没有
区别
,执行的时间复杂度都是O(N),也就是采用全表扫描,进行循环+计数的方式进行统计。 如果是MySQL MylSAM存储引擎,...
count
(1)、
count
(*)与
count
(列名)的执行
区别
1.
count
(1) and
count
(*) 当表的数据量大些时,对表作分析之后,使用
count
(1)还要比使用
count
(*)用时多了! 从执行计划来看,
count
(1)和
count
(*)的效果是一样的。 但是在表做过分析之后,
count
(1)会比
count
(*)的...
MySQL
56,940
社区成员
56,757
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章