继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

MogonBook_MySql_配合码表查询

MahoneAlex
关注TA
已关注
手记 24
粉丝 49
获赞 326

有些时候需要查询出特殊的一组数据,比如说TableA中的一个字段的值为a,b,c,而对应的a和b和c都是码表TableB中的一条数据,如下图所示:

TableA中的数据:

图片描述

TableB中的数据:

图片描述

此时想把TableA中的a,b,c显示为码表TableB中的对应的名称时,可以通过GROUP_CONCAT(expr)函数与FIND_IN_SET(str,strlist)函数相结合,前者是将分组函数通过','隔开显示在一行里,就是所谓的列转行,后者则是获取strlist中包含str的字段,简单来说,就是先将码表中的typeName分成一组,并用','隔开显示,如下图所示:

图片描述

然后需要查出TableA中的数据,如下图:

图片描述

最后再查询条件中用FIND_IN_SET(str,strlist)这个函数来匹配TableA中包含TableB中的typeId,结果如下图所示:

图片描述

打开App,阅读手记
6人推荐
发表评论
随时随地看视频慕课网APP