select count(*) from table

Sydgxv 2014-01-15 08:15:51
select count(*) from table 中的 *是代表什么功能? 如果能够给个例子看下会更好,请指点。
...全文
7091 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
苏格拉低 2014-01-23
  • 打赏
  • 举报
回复
这个问题你需要先自己 做实验啊, 你查询count(id) 就会 查询出 你当前表中 id 这一列 所对应的 数量, 查询count(name) 就是查询出你当前表中 name 这一列 所对应的数量。 那么很显然 如果count(*) 就会查询出 所有列 对应的数量。 无论是 count(id) 还是 count(name) 或者count(*) 结果是一样的。
ermuzi 2014-01-23
  • 打赏
  • 举报
回复
看看mySQL文档嘛。动手试试,一下子就搞明白了
msguoji 2014-01-23
  • 打赏
  • 举报
回复
引用 12 楼 u010310183 的回复:
这个问题你需要先自己 做实验啊, 你查询count(id) 就会 查询出 你当前表中 id 这一列 所对应的 数量, 查询count(name) 就是查询出你当前表中 name 这一列 所对应的数量。 那么很显然 如果count(*) 就会查询出 所有列 对应的数量。 无论是 count(id) 还是 count(name) 或者count(*) 结果是一样的。
如果name为null呢?不要误导啊,查询的是有记录的数量
Rotel-刘志东 2014-01-23
  • 打赏
  • 举报
回复
(*)不是代表所有列的,是统计。 count(*)=count(1)
iihero 2014-01-22
  • 打赏
  • 举报
回复
这里的*, 不可以简单的理解为所有列。理解为所有符合条件的元组即可。 对于值为NULL的列的count的统计,缺省是不计入内的。 基本上有下述恒等的关系。 count(*) == count(PK) == count(1)
KazJ 2014-01-22
  • 打赏
  • 举报
回复
查询所有列
东方项天 2014-01-21
  • 打赏
  • 举报
回复
引用 3 楼 zhouda829829 的回复:
select count(*) from table;这条指令就是会计算出你这个table表里面所有的行数;你也可以这样查询,select count(*) from table where 条件;这样显示的就是对于满足你这个条件的所有行数的计数。
正解
ermuzi 2014-01-19
  • 打赏
  • 举报
回复
如: Id Level Msg ---------------- 1 Info abc 2 (NULL) def COUNT(*)返回2 COUNT(Level)返回1.
ermuzi 2014-01-19
  • 打赏
  • 举报
回复
COUNT(FIELD) 是对FIELD值非空的记录记数,而Count(*)是对所有的记录计数
ACMAIN_CHM 2014-01-17
  • 打赏
  • 举报
回复
count(*) 在这里代表对行进行计数,是个语法上的使用规则。*本身在这儿不代表任何东西。
Fashiontao 2014-01-17
  • 打赏
  • 举报
回复
* 代表所有的记录。
嘻哈大咖秀 2014-01-17
  • 打赏
  • 举报
回复
楼上全正解 +3
zhouda829829 2014-01-16
  • 打赏
  • 举报
回复
select count(*) from table;这条指令就是会计算出你这个table表里面所有的行数;你也可以这样查询,select count(*) from table where 条件;这样显示的就是对于满足你这个条件的所有行数的计数。
Sydgxv 2014-01-15
  • 打赏
  • 举报
回复
select count(*) from table ,是不是count的所有列 table表 count | other | other
rucypli 2014-01-15
  • 打赏
  • 举报
回复
*代表所有列

56,876

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧