oracle怎么去除查询出来的varchar2类型的''号?

--查询1select*frommenuwhereidin(3,9,207);--查询2select*fromcore_menuwhereidin(selectprfro... --查询1
select * from menu where id in (
3,9,207
);
--查询2
select * from core_menu where id in (
select pr from privilege where id=1
);
pr是varchar2类型,查出来的结果为'3,9,207',这样的话查询2报错:无效数字,请问怎么把子查询的结果去除''号,变成查询1。
展开
 我来答
longrenyingdc8ecb1
2015-05-23 · TA获得超过1万个赞
知道大有可为答主
回答量:6032
采纳率:82%
帮助的人:2382万
展开全部
兄弟,这不是一回事。
如果我没有猜错,你的privilege表的pr字段的 保存内容直接就是 一行内容为3,9,207,而不是一行一个,这样的话不管用什么函数select pr from privilege where id=1查询出的结果都是一个字段,也就是说都是一个varchar2类型的字段,不能改为你要的那种变为三个。
想变为三个,个人认为你要将privilege想、办法变为
id pr
1 3
1 9
1 207
才行,可是这只是两个逗号,如果逗号可能有很多个,那么有的改了,而且效率只能呵呵了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式