用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2827|回复: 6
收起左侧

[HELP] LIKE语句查询问题 求帮忙

[复制链接]
发表于 2012-9-15 12:01:09 | 显示全部楼层 |阅读模式


有个数据表 要把字段type里  等于1的数据表查出来, 只等于1的 像 21,11,11 这样的数据不允许查出来

也就是结果只能查出第一条数据 这样的LIKE 语句怎么写啊?

id                        title                       type
1                       标题1                   11,31,21,1
2                       标题2                    91,87,31,11
3                       标题3                    41,11,114
4                       标题4                   19,17,21,217,211  


发表于 2012-9-17 20:35:06 | 显示全部楼层
对的,不需要了,没注意看这句的用途
发表于 2012-9-17 16:43:22 | 显示全部楼层
id                        title                       type
1                       标题1                   11,31,21,1,
2                       标题2                    91,87,31,11,
3                       标题3                    41,11,114,
4                       标题4                   19,17,21,217,211,

type的存储内容后面全部都要加个逗号

SELECT * FROM table WHERE type = 1 AND type LIKE ('%1,%');
发表于 2012-9-17 17:15:10 | 显示全部楼层
这样也不行的
应该这样
SELECT * FROM table WHERE type = 1 AND
(type LIKE ('1,%')
or type LIKE ('%,1')
or type LIKE ('%,1,%'))
;
应该分别考虑1开头的,1结尾的和1在中间的
发表于 2012-9-17 17:19:24 | 显示全部楼层
朱建军 发表于 2012-9-17 17:15
这样也不行的
应该这样
SELECT * FROM table WHERE type = 1 AND

type = 1 是不是应该不要了?
发表于 2014-9-19 12:34:47 | 显示全部楼层
写个函数,根据逗号分开,找值为1的记录就行

本版积分规则