nineday900
2020-12-15 10:04
采纳率: 83.3%
浏览 28
已结题

mysql 查询某串字符串是否满足条件?

有一个条件字段,如果查询时该字段值为4,8或者6,4这种满足条件,sql语句要怎么写?

  • 收藏

11条回答 默认 最新

  • a1767028198 2020-12-15 11:24
    已采纳

    看你的要求估计是这种

     

    自己写业务拆分你的4,6 成数组,搭配mybatis 很快就成了;

    已采纳该答案
    打赏 评论
  • BobHe 2020-12-15 10:52
    select * from table where condition_ids in ('4,8','6,4');
    打赏 评论
  • JAVA小S 2020-12-15 11:06

    打赏 评论
  • nineday900 2020-12-15 11:14

    这样不行,我要的效果是,假设字段值为6,3,7,8,我查询条件为3或者3,8也可以找到该记录,如果查询条件为3,9则找不到该记录

    打赏 评论
  • JAVA小S 2020-12-15 11:26

    打赏 评论
  • nineday900 2020-12-15 11:27

    对的,这个可以解决,流弊流弊

    打赏 评论
  • nineday900 2020-12-15 11:27

    感谢大佬指点

    打赏 评论
  • CQTany 2020-12-15 16:10

    这种设计好烂,该考虑改设计,这样的设计就算暂时按上面的find_in_set解决了,或者like解决了,待你数据量越来越大,你就会发现其中的问题。这种应该用中间表的方式来解决

    打赏 评论
  • nineday900 2020-12-17 13:50

    请问你指的中间表是什么意思,麻烦指点一下,感谢

    打赏 评论
  • CQTany 2020-12-17 14:31

    就是把你存的类似数组这样的字段,单独建表,然后那张表来保存每一个值,对应的行再加上刚刚这张表的主键列做绑定,就类似  3,5,7,9 拆分到另外一张表,

    3,原表主键

    5,原表主键

    7,原表主键

    9,原表主键

    打赏 评论
  • nineday900 2020-12-17 15:26

    好的,理解了,感谢

    打赏 评论

相关推荐 更多相似问题