问题描述:
某小区,需要按照小区、楼栋、单元号、房间号进行排序,但是按照地址描述排序时,因为字符串中包含数字,所以造成了如下的结果,
1号楼之后应该是2号楼,但是查询结果却是10号楼 。
尝试解决
使用正则表达式替换
结果:
虽然楼栋号排序正常了,但是会发现房间号排序出现了混乱。 继续想办法
终极办法:
使用translate函数
可以发现,结果正常显示 。
以下附上translate使用方法
一、语法:
TRANSLATE(string,from_str,to_str)
二、目的
返回将(所有出现的)from_str中的每个字符替换为to_str中的相应字符以后的string。TRANSLATE 是 REPLACE 所提供的功能的一个超集。如果 from_str 比 to_str 长,那么在 from_str 中而不在 to_str 中的额外字符将从 string 中被删除,因为它们没有相应的替换字符。to_str 不能为空。Oracle 将空字符串解释为 NULL,并且如果TRANSLATE 中的任何参数为NULL,那么结果也是 NULL。
三、允许使用的位置
过程性语句和SQL语句。
四、示例
Sql代码
SELECT TRANSLATE('abcdefghij','abcdef','123456') FROM dual;
TRANSLATE (
--------------
123456ghij
SELECT TRANSLATE('abcdefghij','abcdefghij','123456') FROM dual;
TRANSL
----------
123456
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容- Java OGNL 注入攻击的预防措施有哪些?(java ognl注入攻击如何预防 )
- Java 中如何实现 double 类型转 BigDecimal 类型?(java double转bigdecimal怎么实现)
- 在 Java 中如何利用 Map 构建表格?(java中怎么使用map做表格)
- Java 中的 exit 方法是否能够终止所有线程?(java exit是否能终止所有线程 )
- Java Supplier 接口如何有效避免空指针问题?(java supplier接口如何避免空指针)
- Java 中如何删除数组中的某个元素?(java怎么删除数组中的某个元素)
- 如何精准地区分 Java 中的重载方法?(如何区分Java中的重载方法)
- Java 中字符串赋值如何赋给另一个变量?(java字符串赋值怎么给另一个变量)
- Java 中静态初始化数组的具体方法有哪些?(Java静态初始化数组的方法是什么)
- Java 拦截器究竟有哪些作用呢?(java拦截器的作用是什么)