mysql 中 FIND_IN_SET 的使用

mysql 中 FIND_IN_SET 的使用

使用场景

表A和表B相互关联,是一对多的关系,A中一个记录对应多个B中的记录。

要求在不建立中间表的情况下,通过A中的一个字段可以找到多个B中的记录。

示例

A:

id | fid   | family
1  | 1,2,3 | English

B:

id | name
1  | a
2  | b
3  | c

表A中有一条记录,记录了English家族的三个字母,通过fid指向表B,可以查找到这三个字母的name值。

sql语句

select * from B where FIND_IN_SET(id,(select fid from A where family = 'English'))

小收获

这里不能用in,谁试谁知道。

mysql查询字符转换用CAST(id as varhcar(255))记得一定要带上255指定长度,不然会报错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值