MySQL 实现从多个规则表中获取结果
网友提问:
网友问题1:使用PowerQuery解答的
https://www.bilibili.com/read/cv27804697
网友问题2:因为速度问题,合作Access解答的
https://www.bilibili.com/read/cv27809022
网友问题3:因为Access里没有GROUP_CONCAT函数,可以手工写一个函数,但是相对麻烦,另外从网友留言中,也能看出,网友是懂MySQL的
https://www.bilibili.com/read/cv26516840
今天我们就用MySQL解决网友遇到的问题



放大图片

网友要求是先看数据列哪些是规则1中开头的,返回对应的值,否则返回 “OTHER”
当添加列1返回的是“OTHER”时,再看哪些是规则表2中包含的,返回对应值,如果没有就返回“OTHER”。如果添加列1不是“OTHER”的,就返回添加列1本身的值。
回答网友问题:



一、先测试一下,如果规则1只看开头
返回

二、再测试一下,如果规则1看包含
返回

三、实现网友需求:把测试1只看开头的代码做子查询,放到测试2看包含的代码的里面(表名和字段名做相应修改即可)
PS: Mysql 5.7版本 Group by 后面 只写 查询1.数据 就可以运行,但是8.0及以后的版本不行,需要写全。
返回:

