簡體   English   中英

使用2 GROUP_CONCAT是否安全?

[英]Is using 2 GROUP_CONCAT safe?

我對商店的產品有很大的投入。 我想列出我的產品展示

  1. delivery_formats(網絡廣播,音頻,DVD)
  2. price_ids(唯一記錄ID)
  3. 價格(實際商品成本/價格)

為了將這些數據分組在一起,我決定通過使用3個GROUP_CONCAT實例來使用3個數組,如下所示:

GROUP_CONCAT(DISTINCT price.Id SEPARATOR ',') as price_ids,
GROUP_CONCAT(DISTINCT price.Price__c SEPARATOR ',') as prices,
GROUP_CONCAT(DISTINCT price.Delivery_Format__c SEPARATOR ',') as delivery_formats

這是完整的查詢:

select field, field, field,GROUP_CONCAT(DISTINCT price.Id SEPARATOR ',') as price_ids,GROUP_CONCAT(DISTINCT price.Price__c SEPARATOR ',') as prices,GROUP_CONCAT(DISTINCT price.Delivery_Format__c SEPARATOR ',') as delivery_formats
from db.ats_store_package__c package
left JOIN db.ats_store_package_meta_tag__c package_meta ON package_meta.ATS_Store_Package__c = package.Id
left JOIN db.ats_store_price__c price ON price.ATS_Store_Package__c = package.Id
left JOIN db.meta_tag__c meta ON meta.Id = package_meta.Meta_Tag__c
left JOIN db.ats_store_package_session__c store_package_session ON store_package_session.ATS_Store_Package__c = package.Id
left join db.ats_conference_session_presentation__c sp on sp.ATS_Conference_Session__c = store_package_session.ATS_Conference_Session__c
where package.Is_Active__c = 1 group by package.Package_Code__c order by package.Sort_Order__c

在php中,我將這3個字符串(prices,price_ids,delivery_formats)分解為3個單獨的數組。

我的3個陣列中的商品是否會根據其price.Id保持/同步? 我在同一行的3個數組是否會保持同步? 就個人而言,我有99%的把握,但我希望收到您的來信。

假設您的所有屬性IdPrice__cDelivery_Format__c具有相同的“區分性”,這意味着它們全部以完全相同的數量存在,然后:是。 如果不是:否。這三個數組的索引很可能會有所不同。

如果您刪除DISTINCT關鍵字將是另一DISTINCT ,那么我將以一種更簡單的方式說“是”。 :)

我的最終決定是分別查詢每種產品的價格。 嘗試在1個大查詢中執行所有操作時,這不值得潛在的噩夢。

暫無
暫無

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

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