我目前正在学习如何在PHP MySQL中构建网站。但是,我似乎无法理解COUNT() as count
并且不会介意进一步解释。
我了解COUNT
,0 || 1
的原则,以及它如何返回与该查询相关的所有值。
但是,不要看COUNT如何计数。无论如何,这就是我写作的代码如何 - 所以我们有一个工作的例子 - 我最初感到困惑的地方。
"SELECT COUNT(id) as count, id
FROM user
WHERE email='$email' AND password='".md5$password."'"
答案 0 :(得分:2)
使用Count()
,您可以计算结果集的返回行数。关于count的官方MySQL文档:
数据库通常用于回答“桌面中某种类型的数据出现频率的问题?”例如,您可能想知道您拥有多少只宠物,或者每个拥有者拥有多少只宠物,或者你可能想对你的动物进行各种人口普查。
计算您拥有的动物总数与“宠物桌中有多少行?”的问题相同,因为每只宠物有一条记录。 COUNT(*)计算行数,因此计算动物的查询如下所示:
SELECT COUNT(*) FROM pet;
AS count
部分意味着此列将获得您可以使用的名称,例如用PHP。另见w3schools上的此扩展:
您可以使用别名为表或列指定其他名称。如果您有非常长或复杂的表名或列名,这可能是一件好事。
别名可以是任何名称,但通常很短。
答案 1 :(得分:2)
这就是所谓的别名,它有时用于向用户或调用代码显示更具吸引力的列标题
SELECT COUNT(`id`) as `count`....
将打印
count
--------
5
别名作为列标题而不是任意字符串:See the SQLFiddle to see the difference
从小提琴中你可以看到标题栏看起来有点像。
count(*)
--------
5
答案 2 :(得分:1)
as count
只是一个别名。您可以对所选的任何字段或方法使用as
。它表示您更改数据集中返回的列的名称。
SELECT `field` as another_name
所以:
SELECT COUNT(*) as `count`
只需将列从COUNT(*)
重命名为count
,即可让您更轻松地使用您的结果集。
它还使您在当前查询中更容易访问。许多人会使用大表名来执行以下操作:
SELECT * FROM `table_with_ridiculous_name` as twrn WHERE twrn.id = 1
答案 3 :(得分:0)
如果您运行此sql:
SELECT COUNT(id), id ....
你会得到(在做一个* _fetch_assoc之后)$row['numberofrecordshere']
这很难回应(或用于比较),除非你知道会有多少记录(这会破坏这个结果的目的) ,无论如何)
将其作为count返回允许您使用$row['count']