Mysql 使用'上的限制和偏移量从具有一对多关系的两个表中获取数据;硕士';桌子

Mysql 使用'上的限制和偏移量从具有一对多关系的两个表中获取数据;硕士';桌子,mysql,limit,one-to-many,Mysql,Limit,One To Many,这似乎很简单,所以我有点不好意思问,但这里是:我有两个表-订单和项目(订单)。一个订单可以有一个或多个项目,我想使用LIMIT来获取,例如前10个订单,也可能使用OFFSET。因此,问题是:如何创建一个查询来实现这一点?例如,如果订单1有2个项目,订单2:1项目,订单3:2项目,订单4:1项目,我需要前3个订单,预期结果将是: 订单1第1项 订单1第2项 订单2第1项 订单3第1项 订单3第2项 使用子查询来限制和给定 MariaDB [sandbox]> select * from ca

这似乎很简单,所以我有点不好意思问,但这里是:我有两个表-订单和项目(订单)。一个订单可以有一个或多个项目,我想使用LIMIT来获取,例如前10个订单,也可能使用OFFSET。因此,问题是:如何创建一个查询来实现这一点?例如,如果订单1有2个项目,订单2:1项目,订单3:2项目,订单4:1项目,我需要前3个订单,预期结果将是:

  • 订单1第1项
  • 订单1第2项
  • 订单2第1项
  • 订单3第1项
  • 订单3第2项

  • 使用子查询来限制和给定

    MariaDB [sandbox]> select * from cat_books;
    +--------+-------+
    | idbook | name  |
    +--------+-------+
    |      1 | book1 |
    |      2 | book2 |
    |      3 | book3 |
    |      4 | book4 |
    +--------+-------+
    4 rows in set (0.001 sec)
    
    MariaDB [sandbox]> select * from books_sold;
    +---------+--------+--------+
    | id_sold | idbook | iduser |
    +---------+--------+--------+
    |       1 |      1 |      1 |
    |       2 |      2 |      1 |
    |       3 |      1 |      2 |
    |       4 |      1 |      3 |
    |       4 |      3 |      5 |
    +---------+--------+--------+
    5 rows in set (0.001 sec)
    
    MariaDB [sandbox]>
    MariaDB [sandbox]> select *
        -> from
        -> (SELECT * FROM CAT_books order by idbook limit 2) cb
        -> join
        -> books_sold bs on bs.idbook = cb.idbook
        -> order by cb.idbook;
    +--------+-------+---------+--------+--------+
    | idbook | name  | id_sold | idbook | iduser |
    +--------+-------+---------+--------+--------+
    |      1 | book1 |       3 |      1 |      2 |
    |      1 | book1 |       4 |      1 |      3 |
    |      1 | book1 |       1 |      1 |      1 |
    |      2 | book2 |       2 |      2 |      1 |
    +--------+-------+---------+--------+--------+
    4 rows in set (0.001 sec)
    

    在一个cte或子查询中获取10个订单,然后加入items表..或者我遗漏了什么P.Salmon我不能使用cte(MySQL 5.7),但一旦我移动到一个更好的web主机,我肯定会尝试使用它。你能详细说明一下子查询吗?我仍在学习MySQL-做一个答案,如果你不介意,我会接受它?啊,那样!我一直在尝试类似的东西,但我错过了在子查询中设置限制!亲爱的,我需要休息一下!太多了!