Задать вопрос
@denislysenko
data engineer

Как распарсить строку?

есть таблица table:

select * from table:
name  last_name     cnt
denis  lysenko         2
Gosha nikitin           3
Ivan    Astankov       1


как можно вывести такой результат? :
name  last_name 
denis  lysenko         
denis  lysenko
Gosha nikitin           
Gosha nikitin
Gosha nikitin
Ivan    Astankov


то есть: столбец cnt показывает количество дублей этой строки, но в итоговой таблице мне нужно чтобы все дубли были выведены.
Есть в sql какой-нибудь оператор который предназначен для этого?
  • Вопрос задан
  • 163 просмотра
Подписаться 1 Простой 7 комментариев
Помогут разобраться в теме Все курсы
  • Merion Academy
    Основы реляционных баз данных SQL
    1 месяц
    Далее
  • OTUS
    SQL для разработчиков и аналитиков
    3 месяца
    Далее
  • Merion Academy
    Базы данных с нуля
    2 месяца
    Далее
Решения вопроса 1
@Akina
Сетевой и системный админ, SQL-программист.
WITH cte AS ( SELECT name, last_name, cnt FROM table
              UNION ALL
              SELECT name, last_name, cnt - 1 FROM cte WHERE cnt > 1 )
SELECT name, last_name FROM cte;
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы