计算选择查询中的记录。

时间:2013-02-18 04:47:18

标签: php mysql sql

我正在尝试从查询中计算记录。但我有问题。

我的查询是这样的:

SELECT name, address, mobile 
  FROM users 
WHERE city = 'beegin'

此查询获取多行。因此我可以知道是否有一种方法可以将count列添加到此select查询中,以计算从查询中提供的记录数。

我不能在这里使用mysqli_num_rows()。这就是我寻找不同解决方案的原因。

希望有人能帮助我。 谢谢。

2 个答案:

答案 0 :(得分:0)

SELECT name, address, mobile, totalCount
  FROM users 
       CROSS JOIN (SELECT COUNT(*) totalCount FROM users WHERE city = 'beegin') b
WHERE city = 'beegin'

答案 1 :(得分:0)

您可以像这样使用SQL_CALC_FOUND_ROWS函数

SELECT SQL_CALC_FOUND_ROWS name, address, mobile FROM users WHERE city = 'beegin'

之后再做第二次查询。

SELECT FOUND_ROWS()

但是如果你使用LIMIT

,这个方法将不起作用