By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE test (a INT, name VARCHAR2(10));
INSERT INTO test(a, name)
SELECT 1, 'John' FROM DUAL UNION ALL
SELECT 2, 'bob' FROM DUAL;
2 rows affected
SELECT t.*, ASCII(SUBSTR(name, 1, 1)) FROM test t;
A | NAME | ASCII(SUBSTR(NAME,1,1)) |
---|---|---|
1 | John | 74 |
2 | bob | 98 |
ALTER SESSION SET NLS_COMP = 'BINARY';
ALTER SESSION SET NLS_SORT = 'BINARY';
SELECT MIN(name), MAX(name) FROM test;
MIN(NAME) | MAX(NAME) |
---|---|
John | bob |
SELECT MIN(name) KEEP (DENSE_RANK FIRST ORDER BY NLSSORT(name, 'NLS_SORT=BINARY_CI'))
AS min,
MAX(name) KEEP (DENSE_RANK LAST ORDER BY NLSSORT(name, 'NLS_SORT=BINARY_CI'))
AS max
FROM test;
MIN | MAX |
---|---|
bob | John |
ALTER SESSION SET NLS_COMP = 'LINGUISTIC';
ALTER SESSION SET NLS_SORT = 'BINARY';
SELECT MIN(name), MAX(name) FROM test;
MIN(NAME) | MAX(NAME) |
---|---|
John | bob |
ALTER SESSION SET NLS_COMP = 'BINARY';
ALTER SESSION SET NLS_SORT = 'BINARY_CI';
SELECT MIN(name), MAX(name) FROM test;
MIN(NAME) | MAX(NAME) |
---|---|
John | bob |
ALTER SESSION SET NLS_COMP = 'LINGUISTIC';
ALTER SESSION SET NLS_SORT = 'BINARY_CI';
SELECT MIN(name), MAX(name) FROM test;
MIN(NAME) | MAX(NAME) |
---|---|
bob | John |