如何返回SQL列时仅反转其中的数字(希伯来语场景)
实现地址中仅反转数字部分的Oracle SQL方案
针对需求,可通过Oracle正则表达式函数结合字符串反转函数实现,以下是具体SQL语句:
SELECT TRIM(REGEXP_SUBSTR(address, '\D+')) || ' ' || REVERSE(TRIM(REGEXP_SUBSTR(address, '\d+'))) AS reversed_number_address FROM a;
语句说明:
REGEXP_SUBSTR(address, '\D+'):匹配并提取地址中的非数字内容(希伯来语街道名称),TRIM用于去除内容前后可能存在的空格REGEXP_SUBSTR(address, '\d+'):匹配并提取地址中的数字部分,通过REVERSE函数反转数字字符串- 最后将处理后的非数字部分与反转后的数字部分用空格拼接,得到符合要求的完整地址
测试验证:
针对表中'ביאליק 23'这条数据,执行上述SQL后会返回结果'ביאליק 32',满足仅反转数字部分的需求。
内容的提问来源于stack exchange,提问作者OracleDBACurios
相关产品推荐
相关产品推荐

