mysql - 限制结果集中元素的数量

标签 mysql sql

我试图通过对我的 sql 逻辑设置限制来限制我的结果集中的元素数量。我有两个独立的功能来实现我想要的。第一个函数有一个我手动设置的限制,例如 0、X。第二个函数有两个额外的参数,即 min 和 max,它们被设置为限制。但是,当最小值和最大值分别为 7、14 时,它会给我更多的元素,然后是 7。结果集中没有重复,因为我在每个元素上都有唯一的 ID,并且它们会 check out 。传递给 sql 函数的整数也有正确的间隔。

我做错了什么?

"SELECT table1.*, table2.user_id FROM table1 LEFT JOIN table2 ON table1.col1 = table2.col2 
    WHERE table1.col1 = :param1 AND table1.col2 = 1 AND table1.col3 = 0 ORDER BY table1.col4 DESC LIMIT $min, $max";

最佳答案

语法是SELECT Syntax 不是

limit min, max

但是

limit offset, row_count

因此,limit 7, 14 表示在偏移量 7 处检索 14 行。

关于mysql - 限制结果集中元素的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13381556/

相关文章:

mysql - 获取最新的行并将其与另一个表链接?

php - Phinx 迁移 'up' 与 'change' 函数

mysql - 显示给定用户的交易余额

mysql - 命名 MYSQL id 列

mysql - 我可以告诉Mysql哪些索引保留在内存中而不管其他索引吗?

php - 基于不同行的值的 SQL 查询

java - 使用 Hibernate 创建/重新创建表后立即自动插入第一行

SQL 关键字 BETWEEN 数字是不是捕捉相等?

sql - 如何使用sql server获取一周中的上一个工作日与当前工作日

mysql - 需要帮助将嵌套连接查询转换为 Laravel Eloquent