Страница 1 из 1

Повторить данные несколько раз в строке SQL

Добавлено: 22 фев 2021, 23:40
nruslan2
Подскажите возможно ли как то решить задачку. Тут вопрос больше к SQL чем к программе Руководителю.

В руководителе есть сущность Работы.
-Наименование работы(тип Имя)
-Дата начала (тип Дата)
-Дата окончания (тип Дата)
(Например запись: Покраска с 01.01.21 по 04.01.21)
и Поле SQL формула: надо чтобы в этом поле в результате вычислений было написано:
"Покраска 01.01.21;Покраска 02.01.21;Покраска 03.01.21;Покраска 04.01.21"

Как написать "Покраска - 4 дня" я знаю, но это не то) А как сделать строчку выше.

Вот как сказать программе продублировать "Покраска" 4 раза с изменением даты (увеличением с шагом +1). По идеи это простой цикл, но в Select нельзя писать цикл)) Есть функция REPEAT она продублирует, но дату не может увеличить только копирует. Может кто знает)

Re: Повторить данные несколько раз в строке SQL

Добавлено: 23 фев 2021, 07:00
support
Попробуйте подзапрос с использованием группировкой по дате и функцией GROUP_CONCAT
https://www.w3resource.com/mysql/aggreg ... concat.php

Re: Повторить данные несколько раз в строке SQL

Добавлено: 23 фев 2021, 14:26
nruslan2
думал вертел так и не получилось или я все таки не понял Вашу идею.

Запись получается одна, те групировать ее смысла нет
GROUP_CONCAT соединяет в себя несколько выводов SQL эт я уже давно уяснил, эту переменную использовал она позволяет получить допустим, если указать дату начала:
"Покраска 01.01.21;Покраска 01.01.21;Покраска 01.01.21;Покраска 01.01.21"
но меня то интересует:
"Покраска 01.01.21;Покраска 02.01.21;Покраска 03.01.21;Покраска 04.01.21"

сижу ломаю голову ничего в голову не лезет(