Saw*_*yer 1 sql oracle hibernate
我正在使用oracle 10.我需要根据两个数字字符串字段对结果集进行排序.一个排序标准字段包含如下数据:FIELD1:
FO-100001001001
FO-100001002001
FO-100001003001
SQ-200001003001
FC-102001003001
Run Code Online (Sandbox Code Playgroud)
另一个 :
FIELD2:
000203
000567
349990
Run Code Online (Sandbox Code Playgroud)
我需要结合这两个标准,第一个标准取优先级,结果需要升序.
我该如何编写这个sql?
由于数字是零填充的,您可以简单地将它们作为字符串进行比较:
SELECT ...
FROM ...
ORDER BY field1 ASC, field2 ASC
Run Code Online (Sandbox Code Playgroud)
或者,如果要忽略前缀field1:
SELECT ..., SUBSTR(field1, 3) AS stripped_field1
FROM ...
ORDER BY stripped_field1 ASC, field2 ASC
Run Code Online (Sandbox Code Playgroud)