SQL语句的几个常用函数

Oracle:select substr(isdn,instr('86',isdn),length(isdn)) from tablename

Sybase:select substring(isdn,charindex('86',isdn),datalength(isdn)) from tablename

Oracle:select replace(isdn,'86','') from tablename

Sybase:select str_replace(isdn,'86','') from tablename //比如stuff()好用

以上几个粗体字所代表的关键字实现的功能以及参数都是一样的,但函数名称不一样,需要注意。

未完待续...

使用decode解决查询中的条件问题:

                        sql1.append(" and decode(substr(othermdn,1,");
                        sql1.append(GlobalConfig.COUNTRYCODE.length());
                        sql1.append("),");
                        sql1.append(DBAUtil.getSqlString(GlobalConfig.COUNTRYCODE));
                        sql1.append(",substr(othermdn,");
                        sql1.append(GlobalConfig.COUNTRYCODE.length() + 1);
                        sql1.append(",length(othermdn)),othermdn)=");
                        sql1.append(DBAUtil.getSqlString(mobile));

绕过交叉匹配的问题(特殊)
                        sql1.append(" and othermdn in(");
                        sql1.append(DBAUtil.getSqlString(DBAUtil.get86Mdn(mobile)));
                        sql1.append(",");
                        sql1.append(DBAUtil.getSqlString(DBAUtil.getMdn(mobile)));
                        sql1.append(")");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值