首页 新闻 搜索 专区 学院

好难 oracle存储过程里面

0
悬赏园豆:5 [已解决问题] 解决于 2016-02-20 10:21

select su.user_id
 from sys_users su
 where TO_NUMBER( TO_CHAR( su.user_id)) in
      (SELECT Replace(User_Ids,'#','') FROM Sys_Group WHERE Group_Id = 5949)
   and su.enabled = 1

报错

凤城沙子的主页 凤城沙子 | 初学一级 | 园豆:115
提问于:2015-12-08 11:51
< >
分享
最佳答案
0

这个语句本身没有问题,是可以这么用的,是你数据的问题,users表中的user _id在tonumber的时候必须都是数字啊,可能存在垃圾数据什么的?建议可以看看

收获园豆:5
默夜鳞飞 | 菜鸟二级 |园豆:220 | 2015-12-08 13:26

数据没有问题

凤城沙子 | 园豆:115 (初学一级) | 2015-12-08 13:36

@itwwg:   这种in用法()中的查询语句是需要查出来的数据是应该是下面这种的,哪种串是不可以这么放在这里的

默夜鳞飞 | 园豆:220 (菜鸟二级) | 2015-12-08 13:50
其他回答(2)
0

明显是你用法不对,你可以去看看instr函数

MrNice | 园豆:3248 (老鸟四级) | 2015-12-08 12:04

instr不就相当于like吗

支持(0) 反对(0) 凤城沙子 | 园豆:115 (初学一级) | 2015-12-08 13:14
0

 看不懂。TO_NUMBER( TO_CHAR(  su.user_id))   神马意思? su.user_id是什么类型的?  多层逻辑的话你最好用括号括起来

小刺猬001 | 园豆:660 (小虾三级) | 2015-12-08 14:21
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册