Как можно получить количество уникальных длин строки в строках базы данных? - PullRequest
5 голосов
/ 18 ноября 2011

Я использую Oracle, и у меня есть таблица с 1000 строк.Есть поле фамилии и

Я хочу знать длину поля имени, но я не хочу его для каждой строки.Я хочу подсчитать различную длину.

Пример:

фамилия:

smith
smith
Johnson
Johnson
Jackson
Baggins

Есть две длины кузнецов по пять.Четыре других, длина семь.Я хочу, чтобы мой запрос возвратил

7
5

Если бы было 1000 имен, я ожидал бы получить все виды длин.

Я пытался,

Select count(*) as total, lastname from myNames group by total

Это не такне знаю, что было всего.Группировка по фамилии просто группирует по каждому отдельному имени, если только это не другая фамилия, как и ожидалось, но не то, что мне нужно.

Можно ли это сделать в одном запросе SQL?

Ответы [ 3 ]

7 голосов
/ 18 ноября 2011
SELECT Length(lastname)
FROM MyTable
GROUP BY Length(lastname)
6 голосов
/ 18 ноября 2011
select distinct(LENGTH(lastname)) from mynames;
1 голос
/ 15 сентября 2018
Select count(*), Length(column_name) from table_name group by Length(column_name);

Это будет работать для разных длин в одном столбце.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...