H5W3
当前位置:H5W3 > 问答 > 正文

mysql 有间隔符的字符串查询的问题

mysql 有间隔符的字符串查询的问题
如图,想要查询字段 type_sid 中带有 gys 的所有记录
要怎么写的优雅,查询的准确。
还有是不是这种设计不太合理?要使用主从表更好 ?

回答

SELECT * FROM contact_company WHERE FIND_IN_SET('gys',type_sid);

这样用不上索引啊..

如果你这个类型比较少,就在这个表里,每个类型一个标志位来记录.
如果你的这个类型比较多的话,还是加个类型表和一个中间多对多的关系表来处理.

又或者存储 bit 类型,每个 bit 位代表一个类型,然后用位计算来判断.

这样设计其实挺不合理的,弄个中间表这样查询比较自然和符合逻辑

iid type_sid
1 kh
1 gys

这样查询就直接
select type_sid from a where iid = 1
这样直接查询就行了

未经允许不得转载:H5W3 » mysql 有间隔符的字符串查询的问题

赞 (0)

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址