Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何获取总记录的详细信息以及有限制的查询_Mysql_Sql_Totals - Fatal编程技术网

Mysql 如何获取总记录的详细信息以及有限制的查询

Mysql 如何获取总记录的详细信息以及有限制的查询,mysql,sql,totals,Mysql,Sql,Totals,如何获取总记录的详细信息以及有限制的查询 下面给出了我的MySQL查询 SELECT name FROM employees LIMIT 10 这将给我10行,但总记录将在6000行左右。我们怎样才能在上面的查询中也得到它呢?使用子查询: SELECT name, (SELECT COUNT(*) FROM employees) AS cnt FROM employees LIMIT 10 使用子查询: SELECT name, (SELECT COUNT(*) FROM employee

如何获取总记录的详细信息以及有限制的查询

下面给出了我的
MySQL
查询

SELECT name FROM employees LIMIT 10
这将给我
10行
,但总记录将在
6000行左右。我们怎样才能在上面的查询中也得到它呢?使用子查询:

SELECT name, (SELECT COUNT(*) FROM employees) AS cnt
FROM employees 
LIMIT 10
使用子查询:

SELECT name, (SELECT COUNT(*) FROM employees) AS cnt
FROM employees 
LIMIT 10

使用
子查询

SELECT nameFROM,
      (select count(1) from employees) as total_count 
From employees 
LIMIT 10
交叉连接

SELECT nameFROM,total_count 
From employees 
CROSS JOIN (select count(1) total_count  from employees) A
LIMIT 10

orderby
添加到查询将使结果一致

使用
子查询

SELECT nameFROM,
      (select count(1) from employees) as total_count 
From employees 
LIMIT 10
交叉连接

SELECT nameFROM,total_count 
From employees 
CROSS JOIN (select count(1) total_count  from employees) A
LIMIT 10
向查询中添加
orderby
将使结果保持一致

您可以在查询中使用选项,该选项将告诉MySQL不计LIMIT子句计算总行数。您仍然需要执行第二个查询来检索行计数,但这是一个简单的查询,并不像检索数据的查询那样复杂。用法非常简单。在主查询中,您需要在SELECT之后添加SQL\u CALC\u FOUND\u ROWS选项,在第二个查询中,您需要使用FOUND\u ROWS()函数获取总行数

SELECT SQL_CALC_FOUND_ROWS name FROM employees WHERE LIMIT 10

SELECT FOUND_ROWS();
您可以在查询中使用选项,该选项将告诉MySQL不计LIMIT子句计算总行数。您仍然需要执行第二个查询来检索行计数,但这是一个简单的查询,并不像检索数据的查询那样复杂。用法非常简单。在主查询中,您需要在SELECT之后添加SQL\u CALC\u FOUND\u ROWS选项,在第二个查询中,您需要使用FOUND\u ROWS()函数获取总行数

SELECT SQL_CALC_FOUND_ROWS name FROM employees WHERE LIMIT 10

SELECT FOUND_ROWS();

请参见,但我不会为SQL\u CALC\u FOUND\u行获得6000,但我不会为SQL\u CALC\u FOUND\u行获得6000