LZYTJX 2023-09-03 00:00 采纳率: 66.7%
浏览 9
已结题

mysql查询一个字段内对应多条id的数据

想问一下各位,我现在的查询,查主表中的类型id对应的名字,但是这主表中的某一条数据可以对应多个类型,所以我写了比如(1,2),
请问查询的时候,如何将多个类型的名字都显示到对应查询结果中,想要的效果就是,比如第二条查出来的数据,我想让他pun_id对应的数据为(1,2),
pun_name数据为,处罚1,处罚2,请问怎么写这个sql

img

img

  • 写回答

2条回答 默认 最新

  • threenewbee 2023-09-03 00:12
    关注
    假设有表 pun,包含id和name字段,假设有如下3行数据
    id name
    1 处罚a
    2 处罚b
    3 处罚c
    有表cases,其中有id和pun_id字段
    假设有如下数据
    id pun_id
    1 1,2
    2 2,3
    那么
    SELECT cases.id, GROUP_CONCAT(pun.name ORDER BY pun.id SEPARATOR ',') AS names
    FROM cases
    INNER JOIN pun ON FIND_IN_SET(pun.id, cases.pun_id)
    GROUP BY cases.id;
    
    返回
    id  names
    1   处罚a,处罚b
    2   处罚b,处罚c
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月11日
  • 已采纳回答 9月3日
  • 创建了问题 9月3日

悬赏问题

  • ¥15 高通uboot 打印ubi init err 22
  • ¥20 PDF元数据中的XMP媒体管理属性
  • ¥15 R语言中lasso回归报错
  • ¥15 网站突然不能访问了,上午还好好的
  • ¥15 有没有dl可以帮弄”我去图书馆”秒选道具和积分
  • ¥15 semrush,SEO,内嵌网站,api
  • ¥15 Stata:为什么reghdfe后的因变量没有被发现识别啊
  • ¥15 振荡电路,ADS仿真
  • ¥15 关于#c语言#的问题,请各位专家解答!
  • ¥15 这个如何解决详细步骤