当前位置: 首页 > 面试题库 >

在MySQL查询中将SELECT与LIMIT一起使用时,如何计算所有行?

厉永宁
2023-03-14
问题内容

我有这样的mysql查询:

SELECT A.ID, A.NAME, B.ID, B.NAME
FROM table1 A
JOIN table2 B ON ( A.ID = B.TABLE1_ID )
WHERE
    cond1, cond2, ..., condN
LIMIT 10

我在查询中有很多where子句。如何改进此查询以获取完整的行数?没有LIMIT我不想再使用一个请求。


问题答案:

您正在寻找的是这个

SELECT SQL_CALC_FOUND_ROWS A.ID, A.NAME, B.ID, B.NAME
FROM table1 A
JOIN table2 B ON ( A.ID = B.TABLE1_ID )
WHERE
  cond1, cond2, ..., condN
LIMIT 10

SELECT FOUND_ROWS();


 类似资料:
  • 我有一张有股票价格的桌子。我想查询(与一个特定的时间框架),以分析和获得价格作为一个基础100从第一个值的特定时间框架。目前我有: 这让我返回每一行: 日期 本期第一价格 当日价格 该correclty向我显示了日期、每个日期的价格和该期间(基准)的第一个价格。我如何获得一个字段,该字段是期间的每个价格/第一个价格除以的结果? 我试过了 但这似乎行不通。 谢谢!

  • 问题内容: 有没有一种方法可以查询数据库以找出所有表中有多少行? IE 希望你能指教 问题答案:

  • 问题内容: 当需要有序集的最后一行时,通常会创建派生表并重新排序。例如,要以自动递增的方式返回表的最后3个元素: 由于也可以具有偏移量,因此如果我们事先知道此查询的行数(例如10),则可以实现相同的结果: 是否可以对表运行子查询并使用该数字动态构建一个? 问题答案: 不,不可能指定动态偏移量。 带有子查询的原始查询是执行此操作的最简单方法。

  • 问题内容: 我正在尝试使用hibernate条件查询在三个字段上执行基本的“或”操作。 例 我想建立一个条件查询,其中我的搜索字符串可以匹配“名称”或“地址”或“ phoneNumber”。 问题答案: 您要使用。像这样 请在此处查看Hibernate文档。

  • 问题内容: 在下面的查询中: 我们将从输出中得到多少结果,以及从哪里到哪里? 问题答案: 从记录#9开始到记录#26结束,它将返回18个结果。 首先从读取查询。首先,您要偏移8,这意味着您跳过了查询的前8个结果。然后限制为18。这意味着您考虑记录9、10、11、12、13、14、15、16 .... 24、25、26,它们总共为18条记录。 检查这个出来。 还有官方文件。

  • 问题内容: 我有以下程序: 我面临的问题是,一旦在STDIN上检测到输入,消息“ User input- stdin”就继续打印…为什么在循环检查哪一个描述符已输入的同时,它一次又不打印一次? 谢谢。 问题答案: 该功能仅在有可用输入时告诉您。如果您实际上并没有消耗它,那么select将继续直接下降。