我有一个名为 orders
的表,其中有一列 ids 连接的示例,它指的是多个产品 id 的存储方式示例:454,678,如果我想选择表 products 内部连接表订单 where products.id in (orders.productids)
它只会列出一行,但如果我执行相同的选择并将 where products.id in (454,678)
然后它列出了我的两行。
由于这些值已经连接起来以便能够在 IN 条件下使用,那么它应该可以工作,它是否可以以某种方式读取连接的两个 id?
最佳答案
花点时间,为订购的product_id创建一个链接表
订单产品:
- order_id(PK)
- product_id(PK)
- 金额
- 销售价格
这有很多优点,例如您可以使用索引进行连接
关于MySQL 选择连接值中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26221805/