我想知道是否有办法根据格式化字段值查询oracle数据库。 例如:
我有一个以“part1 part2”格式存储的邮政编码表。我希望能够通过使用上述格式或“part1part2”格式搜索邮政编码。 我想的是通过删除空格格式化输入的邮政编码,然后查询数据库,如:
SELECT *
FROM POSTCODES_TBL t
WHERE t.postcode.**Format(remove spaces)** = 'part1part2'
格式(删除空格会将邮政编码从“part1 part2”转换为“part1part”。
我的问题是,有可能吗?
答案 0 :(得分:2)
您可以使用regexp_replace
SELECT *
FROM POSTCODES_TBL t
WHERE regexp_replace(t.postcode,'\s', '') = 'part1part2'
这将删除任何空格(空格,制表符,换行符等)
或者如果你只想摆脱空格,replace
也会起作用:
SELECT *
FROM POSTCODES_TBL t
WHERE replace(t.postcode,' ', '') = 'part1part2'
手册中的更多细节:
答案 1 :(得分:1)
您可以使用
SELECT * 来自POSTCODES_TBL t 在哪里。例如' part1%part2'