关于oracle模糊查询的问题

我在运行的过程中出现的问题是这样的:表名是table,有一个字段名称为user_id,该列下面有一项的值是alferd,写的模糊查询语句是:select*fromtabl... 我在运行的过程中出现的问题是这样的:表名是table,有一个字段名称为user_id,该列下面有一项的值是alferd,写的模糊查询语句是:select *from table where user_id like '[alferd]%',为什么查询不出来任何项目?而且不管[ ]中是什么字母都没办法查出来,是什么原因?麻烦具体解释一下模糊查询中[ ]的用法吧,谢啦!! 展开
 我来答
c6iz
2012-08-16 · TA获得超过1417个赞
知道大有可为答主
回答量:1426
采纳率:100%
帮助的人:1043万
展开全部
select *from table where user_id like 'alferd%';
ORACLE查询不能加[]
像你这种情况只能使用
select * from table where user_id like 'a%' or user_id like 'l%' or user_id like 'f%' ;
如果你知道完整的值的话
select * from table where user_id in ('a','b');
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-08-16
展开全部
你这是照搬的某些资料上的语法里的语句吧。
这个中括弧是不要的:
select *from table where user_id like 'alferd%';

语法里的[]是指有这么一部分。而不是说引号里%边上有这个[]。
更多追问追答
追问
不是,你这种跟有[  ]的用法不一样
追答
那可能是我没接触过带 [ ] 的。不过如果在单引号''里出现,[ ]就被当做模糊查询的字符串处理了。而且什么时候出现的带 [ ] 的模糊查询用法?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
micro0369
2012-08-16 · TA获得超过1.2万个赞
知道大有可为答主
回答量:9250
采纳率:85%
帮助的人:4057万
展开全部
[charlist] 字符列中的任何单一字符

我们希望从 "Persons" 表中选取居住的城市以 "A" 或 "L" 或 "N" 开头的人:
我们可以使用下面的 SELECT 语句:SELECT * FROM Persons
WHERE City LIKE '[ALN]%'

所以你的 select *from table where user_id like '[alferd]%'意思是,查询user_id中以a、l、f、e、r或d开头的数据。

按理说这个oracle应该是支持的,不过我刚刚试过了,也不行!??!
追问
就是啊,肿么回事。。。。
追答
我刚刚仔细查了一下oracle的like,只有
% 百分号
_ 下划线,单字符
两者方式,没有[]的写法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
风河之洛阳
2012-08-16 · TA获得超过109个赞
知道答主
回答量:39
采纳率:0%
帮助的人:25.9万
展开全部
select *from table where user_id like 'alferd%';这不就OK了 你很白啊 楼主
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CJavaer
2012-08-16 · TA获得超过300个赞
知道小有建树答主
回答量:174
采纳率:0%
帮助的人:225万
展开全部
这个是正则表达式啊。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式