JOIN 後有重複的欄位!

发布于 2022-09-07 15:46:02 字数 903 浏览 10 评论 0

SELECT * FROM user_order as c
        LEFT JOIN product_order AS b ON c.order_id = b.order_id
        LEFT JOIN product AS a ON a.prod_id = b.prod_id
        WHERE c.id = '16'

太尷尬了
我的 user_order 訂單有 name, id
我的 product_order 也有 id
我的 product 也有 name
我這三個都有 prod_id 欄位

導致我現在沒有辦法顯示一些數據?
例如我只想要顯示 product 的 name, 而不是 user_order 裡面的 name...
這是怎麼會這樣?如何改善?
更新一下

id = user_id
我 user_order 有 order_id, id, name ......
我的 product_order 有 order_id, prod_id, id
我的 product 有 prod_id, name, icon

我主要要顯示的是 user_order ,但是顯示 product 的商品名字
我會把購物車用戶選好的商品送到 product_order 裡
也就是說會這樣

product_order:
clipboard.png

所以我知道訂單 8 有哪些 prod_id (商品)
訂單 9 有哪些 prod_id (商品)
但我是要在 user_order 顯示他有的商品
也就是 order_id 8 商品有 1,3,4
我要顯示 1,3,4 的 name, icon

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

ゝ偶尔ゞ 2022-09-14 15:46:02
SELECT a.name FROM user_order as c
        LEFT JOIN product_order AS b ON c.order_id = b.order_id
        LEFT JOIN product AS a ON a.prod_id = b.prod_id
        WHERE c.id = '16'
    指定select的表名就行了
泅人 2022-09-14 15:46:02

先理清表之间的关系,及各字段的含义,然后再进行操作
建议将表结构及个字段含义,目标结果贴下

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文