一、group_concat使用
example(替换column_name和table_name即可,这个不需要翻译吧哈哈哈哈):
select group_concat(column_name) fromtable_name
查询结果自己用逗号间隔
如果要排序:
select group_concat(column_name ORDER BYcolumn asc) from table_name
是不是屌得飞起…………
感谢原文
二、根据group_concat查询结果,截取前几名的方法
(主要用到substring_index用法详解):
eg:取前三个
select substring_index(group_concat(column_name),',',3) fromtable_name
三、MySQL拆分逗号间隔的字段,做连接查询
利用:INSTR、FIND_IN_SET
productId是逗号间隔的
根据上一步的结果,使用find_in_set方法,结果如下:
SELECT *
FROM `hg_product`
WHERE FIND_IN_SET(`id`,(
select `productId`
from `hg_offer`
where id= '4249c975b2c611eba5617cd30ac47872')) ;