sql - 查询中的 Oracle 字符串比较

标签 sql oracle select

我有两个字符串,想知道在按字母顺序排序的列表中,string2 是在 string1 之前、相同还是在 string1 之后。

类似于 MySql 的 STRCMP (string1, string2)

是否有某种不那么流行的内置函数,或者我应该使用非函数方法手动比较每个字符(如果相当大的话)?

提前致谢。

最佳答案

是的,是< .您可以使用 bool 比较器来获得“字母”排序。我把它放在引号中是因为它取决于字符串的排序规则,但通常是合理的。

where 中子句:

where string1 < string2

如果你想要一个值,那么这在 Oracle 和 MySQL 中都有效:

select (case when string1 < string2 then 1 else 0 end) as string_compare_flag

关于sql - 查询中的 Oracle 字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42951065/

相关文章:

php - 内连接和回显解决方案

mysql - 每行的 SQL 历史记录

oracle - 通过 map 搜索数据可减少编程

html - 如何通过 CSS 选择和更改下拉列表 <select> 中的值

php - 按正/负值和表格中未找到的任何其他帖子排序

c# - 我可以从数据库中检索艺术家、名称和流派,但不能检索价格。检索价格的代码应该是什么?

sql - 每周 Postgres 条目,每周

oracle - 如何知道:new in a trigger?的类型

oracle - Oracle中的ADMIN选项和GRANT选项有什么区别

mysql - SELECT 和其他值的 INSERT 结果