sách gpt4 ai đã đi

mysql - 三表连接问题与计数

In lại 作者:行者123 更新时间:2023-11-29 14:31:06 26 4
mua khóa gpt4 Nike

我正在尝试生成产品、classid、optionid、“images”的列表(从四个表)。每个产品可以有多个ClassID(一对多),每个ClassID可以有多个OptionID,每个OptionID可以有很多很多图像。最后,对于图像表(xcart_images_D),我想计算()每个productID有多少图像。如何在不使用多个语句的情况下有效查询所有这些信息?

这是每个表的基本信息

xcart_products
+ productid*
+ product
xcart_classes -
+ classid*
+ productid (xcart_products.productid)
xcart_class_options -
+ optionid*
+ classid (xcart_classes.classid)
+ option_name
xcart_images_D -
+ imageid*
+ optionid (xcart_class_options.optionid)
+ id (xcart_products.productid)

* primary/foreign key

我有三个表连接工作,但我无法让 xcart_images_D 表工作,我也不明白如何完成计数。有人能指出我正确的方向吗?

这里值得的是我的三表连接

SELECT xp.productid, xp.product, xc.classid, xco.optionid, xco.option_name
FROM xcart_products xp
JOIN xcart_classes xc ON xp.productid = xc.productid and xc.class = 'Color'
JOIN xcart_class_options xco ON xc.classid = xco.classid
WHERE xc.class = 'Color'
ORDER by xp.productid DESC

当我尝试添加以下行时,结果数量减少了大约一半。

 JOIN xcart_images_D xi ON xi.optionid = xco.optionid
GROUP BY xp.productid

1 Câu trả lời

SELECT xp.productid, count(xi.imageid)
FROM xcart_products xp
INNER JOIN xcart_classes xc ON xp.productid = xc.productid AND xc.class = 'Color'
INNER JOIN xcart_class_options xco ON xc.classid = xco.classid
INNER JOIN xcart_images_D xi ON xi.optionid = xco.optionid
GROUP BY xp.productid
ORDER by xp.productid DESC

关于mysql - 三表连接问题与计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10020468/

26 4 0
Bài viết được đề xuất: android - 底部没有小三角形的 map 标记信息窗口
Bài viết được đề xuất: android - Android中的编码样式:什么时候应该使用样式而不是内联属性?
Bài viết được đề xuất: android - 找不到 Activity 异常
Bài viết được đề xuất: Lệnh "in" của MySQL
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com