我正在考虑如何编写这个sql:
SELECT o.orders_id, o.customers_name, o.customers_email_address, o.orders_status, op.products_id, op.products_model
FROM orders o, orders_products op
WHERE o.orders_id = op.orders_id and o.orders_status='3'
我想要完成的是我需要每个用户订单中的product_id列表。但是,许多用户以相同的顺序两次订购相同的产品。所以我需要做的是说它是否与那里的order_id相同,并且该订单中有重复的product_id只显示product_id一次。我不确定该怎么做..
答案 0 :(得分:0)
只需像这样添加DISTINCT
......
SELECT DISTINCT o.orders_id, o.customers_name, o.customers_email_address, o.orders_status, op.products_id, op.products_model
FROM orders o, orders_products op
WHERE o.orders_id = op.orders_id and o.orders_status='3'
但是,只拥有一次产品并拥有数量列不是更好吗?
诺尔
答案 1 :(得分:0)
如果您只是获得重复项,您可以添加GROUP BY o.orders_id,o.customers_name,o.customers_email_address,o.orders_status,op.products_id,op.products_model
或者你可以选择DISTINCT op.products_id