php - 查询条件的问题

查看:65
本文介绍了php - 查询条件的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

数据库里有一列

还有一个数组array(5,8,9)
我想查询条件是 数组和列除去逗号,有相同的数,就查出来,
比如有一个数组(5,8) ,数据就全部查出来

  一个数组(6,9) ,就查最后一个
  一个数组(1,2),查不出来

解决方案

我觉得题主想找的是mysql中的FIND_IN_SET,可以这样写

select * from table_name where find_in_set('5',type_id) or find_in_set('8',type_id) or find_in_set('9',type_id) ;

但是这样的语句会产生全表扫描,也就是说,表数据量大了,你的语句就会很慢,具体有多慢呢,举个例子,当你的表有100万条数据时,这条语句执行将会需要几秒钟那么久。而如果你只使用id in (xx,xxx)这样的语句,在几十条数据到几百万条数据,执行速度不会有明显差异(±10ms)

这篇关于php - 查询条件的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆