Получить все уникальные символы String в SQL - PullRequest
0 голосов
/ 27 сентября 2011

У меня есть таблица со столбцами firstName и lastName как String.Теперь я хочу взять все уникальные первые символы из этих таблиц column.my, в которых есть тысячи строк в этой таблице, но я просто хочу, чтобы в SQL была любая строковая функция для этого?

Еще одна вещь, которая мне нужначтобы найти только алфавиты без специальных символов. Так как моя таблица большая, она содержит имя и фамилию со специальным символом, и мне нужно их игнорировать

EG: предположим, что моя таблица содержит запись имени в виде :: jack, tom, riddle, monk, * opeth

В этом случае мой sql должен вернуть j, m, r, t

Ответы [ 3 ]

1 голос
/ 27 сентября 2011

Попробуйте это:

SELECT DISTINCT LOWER(SUBSTR(firstName,1,1)) firstChars
FROM your_table
WHERE LOWER(SUBSTR(firstName,1,1)) IN
 ('a','b','c','d','e','f','g','h','i','j',
  'k','l','m','n','o','p','q','r','s','t',
  'u','v','w','x','y','z')
ORDER BY firstChars
0 голосов
/ 27 сентября 2011

Если вы работаете на 10g или выше, версия запроса RegEx требует гораздо меньше ввода:)

SELECT DISTINCT SUBSTR(firstName,1,1) 
FROM your_table
WHERE REGEXP_LIKE(firstName,'^[[:alpha:]]')
/

Возможно, вы захотите применить UPPER () или LOWER () для сглаживания смешанного регистрарезультаты.

0 голосов
/ 27 сентября 2011
SELECT DISTINCT left(firstName,1) FROM table_name
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...