Home >Backend Development >PHP Tutorial >sql语句中能否直接把截取的字符串当作where条件
MySQL
例如这样的select `id` from `table` where left(`flag`,1)='1'
你的sql不就是吗??
晕。。。我感觉像是这样写的, 我试了几次没成功
是我where条件写错了
另外我想问下, 这样的sql语句性能怎么样呢
select `id` from `table` where left(`flag`,1)='1'
我想问下, 这样的sql语句性能怎么样呢
性能应该不怎么样 用到函数了
性能就不怎样了,因为不能使用索引写作这样才可以使用索引(如果有的话)select `id` from `table` where `flag` like '1%'
你这是要做商品筛选吧 用你这个方法你有没有想过以后要是增加属性 你以前的数据怎么办
性能就不怎样了,因为不能使用索引写作这样才可以使用索引(如果有的话)select `id` from `table` where `flag` like '1%'
你这是要做商品筛选吧 用你这个方法你有没有想过以后要是增加属性 你以前的数据怎么办
我是在想比如商品有10个属性吧, 我flag字段中每个属性对应一个数字, 我现在只用到了前两个, 后边的我自动补0, 以后用到了再赋值。 您有什么更好的做分类的方法么
建一个属性表 aid 属性
一个商品表 gid
一个对应表 aid gid 对应边里aid 和gid 都可以索引 扩展属性的时候只要编辑属性表就可以了
只要 like 的匹配串左端不是变数,那么就可以使用到索引对于 1,2,11 所以后是 1,11,2like '1%' 总是会快速取出 1,11 的,因为他们聚集在一起