簡體   English   中英

來自兩個表的GROUP_CONCAT

[英]GROUP_CONCAT from two tables

我有這么大的選擇,問題是來自不同表的2 GROUP_CONCAT。 如果我從選擇的顏色中刪除描述,則顯示正常,如果保持這種顏色,則顯示x3次。

SELECT
DISTINCT m.model as model
        ,m.price as price
        ,m.size as size
        ,m.colorsetIDMainBag as mainColor
    ,GROUP_CONCAT(colorset.name) AS color
    ,leather.name AS leather
        ,leather.nameUA AS leatherUA
        ,leather.nameRU AS leatherRU
    ,GROUP_CONCAT(description.descriptionUA) AS descriptionUA
    ,GROUP_CONCAT(description.descriptionRU) AS descriptionRU
    ,GROUP_CONCAT(description.descriptionEN) AS descriptionEN
FROM
        bags as m
        LEFT OUTER JOIN colorpack
        on m.bagsID=colorpack.colorpack
        LEFT OUTER JOIN color
        on colorpack.colorID=color.colorID
        LEFT OUTER JOIN colorset
        on color.colorsetID=colorset.colorsetID
        LEFT OUTER JOIN leather
        on color.leatherID=leather.leatherID

        LEFT OUTER JOIN descriptionpack
        on m.bagsID=descriptionpack.descriptionpack
        LEFT OUTER JOIN description
        on descriptionpack.descriptionID=description.descriptionID

WHERE
        colorpack.colorpack='62'
GROUP BY model

嘗試

GROUP_CONCAT(DISTINCT colorset.name) AS color

我想您知道您正在對GROUP BY使用非標准的MySQL擴展,這通常會產生不可預測的奇怪結果。 如果您不知道,請閱讀此內容。

http://dev.mysql.com/doc/refman/5.1/en/group-by-extensions.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM