mysql - 如何获得忽略子表元素的元素数量?
问题描述
我想获得我拥有的订单,但是当我进行选择时,每个项目都有不同的行,但我不知道如何获得忽略项目的订单
ORDERS
ID
1
2
3
ORDER_PRODUCT
ID ORDER_ID PRODUCT_ID
1 1 1
1 1 2
1 2 3
1 3 4
SELECT ORDER_PRODUCT.* FROM ORDER_PRODUCT INNER JOIN ORDERS ON ORDERS.ID = ORDER_PRODUCT.ORDER_ID LIMIT 2;
我希望获得 2 个订单信息,但我收到了 2 个第一批商品,我怎样才能获得 2 个订单?
我收到的:
ID ORDER_ID PRODUCT_ID
1 1 1
1 1 2
我期望收到的:
ID ORDER_ID PRODUCT_ID
1 1 1
1 1 2
1 2 3
解决方案
如果我确实了解您要尝试的方法,那么您正在尝试限制内部连接元素,因此您应该执行类似的操作来仅限制内部连接,而不是限制整个查询:
SELECT op.ID FROM ORDER_PRODUCT op
INNER JOIN (SELECT * FROM ORDERS LIMIT 2) as o ON o.ID = op.ORDER_ID;
另外我假设您还想在内连接查询中添加条件,只需在限制之前添加它们。
如果这不是您想要达到的目标,请告诉我。
推荐阅读
- whatsapp - 链接开始 WhatsApp 视频聊天
- java - Spring MongoDB - @Indexed 和 @Field 注释之间的区别
- rust - 在 Rust 中将字符串开头的字符的多个副本合并为一个
- html - 两个或多个搜索数据列表一次选择值不显示在其他
- docker - docker volume ls 列出空
- botframework - BotBuilder - NLP 与调度错误没有这样的主机是已知的
- laravel - isset 或空 Laravel 中的非法偏移类型
- reactjs - 如何在 React js 中对手机号码字段应用验证?
- python-2.7 - 从 PSSE 获取机器的 Mbase (MVA) for Python 代码
- laravel - 如果复选框选中,Laravel 验证