Каков наилучший способ разделения данных в алфавитном порядке с помощью SQL? - PullRequest
1 голос
/ 18 июля 2011

Каков наилучший способ разделения данных в алфавитном порядке с помощью SQL?

Я хотел бы разделить данные на 3 части на основе начального символа данных в некоторых столбцах ??

Ответы [ 3 ]

2 голосов
/ 18 июля 2011
-- For Range [A--G]

SELECT target_col
FROM   target_table
WHERE  target_col >= 'A'
  AND  target_col < 'H'

Если для target_col существует простой индекс, то, вероятно, запрос будет использовать его.

2 голосов
/ 18 июля 2011

Вы можете использовать оператор REGEX_LIKE для получения результата.

Пример:

-- For Range [A--G]
SELECT target_col
FROM   target_table
WHERE  REGEXP_LIKE( target_col, '^[A-G].$' ) ;

-- For Range [H--O]
SELECT target_col
FROM   target_table
WHERE  REGEXP_LIKE( target_col, '^[H-O].$' ) ;

-- For Range [P--Z]
SELECT target_col
FROM   target_table
WHERE  REGEXP_LIKE( target_col, '^[P-Z].$' ) ;
1 голос
/ 18 июля 2011

Также вы можете использовать это:

select *
from your_table
where your_column between 'A' and 'G';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...