2013-02-06 34 views
0

我想获得id和id的编号。所以,我写这篇文章的SQL命令:PHP SQL计数并获取数据

SELECT count(id), id 
FROM tblExample 

这是行不通的。你有针对我的解决方案吗?为了得到我的身份证号码和身份证号码的价值。

或者一个函数PHP来计数我的结果集。

+0

你想**每个**'ID'或**所有**'ID'的数量?我假设你的桌子上有'Id'! –

+0

这是什么RDBMS?它是MySQL吗? –

+0

我使用SQL SERVER –

回答

10

只需添加一个GROUP BY id

SELECT id, COUNT(id) 
FROM tblExample 
GROUP BY id; 

Demo


更新:

您发布的查询:

SELECT count(id), id 
FROM tblExample; 

在大多数RDBMS中不起作用,它不应该。在SQL Server中,你会得到一个错误;如下所示:

列'id'在选择列表中无效,因为它不包含在 集合函数或GROUP BY子句中。

奇怪的是,虽然,MySQL的允许这种(该任择议定书并没有说什么RDBMS他使用),在这种情况下,它会得到一个任意值(这也取决于设置的选项),对于 id列和 COUNT在这种情况下将是所有ID的计数。

但不建议这样做。

+0

你能解释这种行为吗?我的意思是GROUP BY。是否由于聚合函数COUNT? –

+0

@raheelshan - 是的,这是因为没有group by的COUNT函数,请参阅我的编辑。 –

+0

它不适用于“group by” –