设为首页 - 加入收藏 华夏网 ()- 云主机,资讯,互联网,人工智能,云计算,大赢家论坛,区块链,VR,站长网!
热搜: 平台 google 2019 中国
当前位置: 主页 > 水果奶奶论坛 > 正文

php – mySql – 使用逗号分隔值列表创建连接

发布时间:2021-04-04 13:37 所属栏目:[水果奶奶论坛] 来源:网络整理
导读:我有一张桌子,上面有商家名字和字段,里面有他们提供的服务. “服务”字段是以逗号分隔的整数列表,它与另一个“服务”表相关,并带有“服务ID”和“服务名称”字段. 我正在尝试创建一个连接这两个的单个查询,因此我可以列出商家列表以及服务名称.到目前为止,我

我有一张桌子,上面有商家名字和字段,里面有他们提供的服务. “服务”字段是以逗号分隔的整数列表,它与另一个“服务”表相关,并带有“服务ID”和“服务名称”字段.

我正在尝试创建一个连接这两个的单个查询,因此我可以列出商家列表以及服务名称.到目前为止,我的解决方案是在我的初始’foreach’循环中进行第二次循环,但这可能意味着每个商家名称有5或6个db调用.

在一些StackOverflowing(google-ing)之后,我注意到使用逗号分隔字段可能不是最好的方法.

任何人都有办法进行连接,或者想如何更好地设置数据库结构?提前谢谢了!

最佳答案
Merchant
MerchantId   Name
          1   Adams Consulting

Merchant_Services
MerchantId    Service
         1    SEO
         1    Brand Consulting

您实际上可以获得以逗号分隔的列表:

SELECT m.*,GROUP_CONCAT(ms.Service) AS Services
FROM Merchant m
LEFT JOIN Merchant_Serivces ms
ON ms.MerchantId = m.MerchantId
GROUP BY m.MerchantId
ORDER BY m.Name,ms.Service

结果是:

MerchantID  Name              Services
----------  ----------------  --------------------
         1  Adams Consulting  Brand Consulting,SEO

【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

网友评论
推荐文章