как установить уникальное имя каждого отдельного значения столбца в SQL - PullRequest
0 голосов
/ 30 января 2019

У меня есть таблица testTble со столбцом testVal, которая содержит повторяющиеся значения.Я могу найти каждое уникальное значение столбца, используя DISTINCT(testVal).Но я хочу установить конкретное имя для каждого уникального значения столбца.

Как:

Я запустил запрос в моей БД и нашел это отличное значение.

SELECT DISTINCT(testVal) AS web FROM `testTble`

Вывод:

web
169.254.15.169
10.0.0.91
192.168.80.47
10

Теперь я хочу задать уникальное имя этих значений, например:

169.254.15.169 как web21 10.0.0.91как web22

Итак, как я могу установить такое имя?

1 Ответ

0 голосов
/ 30 января 2019

В MySQL 8+ вы можете использовать row_number():

select test_val, row_number() over (order by test_val)
from t
group by test_val;

В более ранних версиях вы можете использовать переменные:

select test_val, (@rn := @rn + 1) as seqnum
from t cross join
     (select @rn := 0) params
group by test_val;

В обоих случаях «имя»является числовым значением, но это похоже на то, что вы хотите сделать.

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