Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 помогите найти лаконичное решение  [new]
_s_e_r_g_e_
Member

Откуда:
Сообщений: 66
Доброе утро, уважаемые коллеги!

Помогите найти лаконичное решение, возможно ли решить данную задачу без использования курсоров?

К сообщению приложен файл. Размер - 29Kb
3 фев 14, 11:13    [15508897]     Ответить | Цитировать Сообщить модератору
 Re: помогите найти лаконичное решение  [new]
Добрый Э - Эх
Guest
в целом базы данных оперируют статичными SQL c заранее описанным и неизменным числом и типом возвращаемых полей. Не может SQL-запрос сегодня возвращать 30 полей, а завтра - 31. Если сильно надо, можно смотреть в сторону динамического SQL, но вообще задача явно для клиента, а не для сервера
3 фев 14, 11:24    [15508981]     Ответить | Цитировать Сообщить модератору
 Re: помогите найти лаконичное решение  [new]
Добрый Э - Эх
Guest
но в целом, можешь посмотреть на связку PIVOT + динамический запрос
3 фев 14, 11:27    [15509007]     Ответить | Цитировать Сообщить модератору
 Re: помогите найти лаконичное решение  [new]
_s_e_r_g_e_
Member

Откуда:
Сообщений: 66
Добрый Э - Эх
в целом базы данных оперируют статичными SQL c заранее описанным и неизменным числом и типом возвращаемых полей. Не может SQL-запрос сегодня возвращать 30 полей, а завтра - 31. Если сильно надо, можно смотреть в сторону динамического SQL, но вообще задача явно для клиента, а не для сервера


В таблице всегда храню окно - 30 недель. На текущей неделе окно от текущей + 30 недель. На следующей неделе будет окно от текущей + 1 неделя. Так вот, при добавлении новой недели, необходимо заполнить поля признаком, если на предыдущей недели был установлен тот же признак.
3 фев 14, 11:31    [15509030]     Ответить | Цитировать Сообщить модератору
 Re: помогите найти лаконичное решение  [new]
Glory
Member

Откуда:
Сообщений: 104751
_s_e_r_g_e_
Через неделю необходимо чтобы у продукта 1 на 31 неделе автоматически появился признак 1

Ну так добавьте в вашу таблицу запись для 31ой недели
3 фев 14, 11:31    [15509033]     Ответить | Цитировать Сообщить модератору
 Re: помогите найти лаконичное решение  [new]
Добрый Э - Эх
Guest
если интересует вертикальная протяжка данных на уровне запроса, то такое можно реализовать. в старых версиях посредством TOP 1 подзапроса. На версии 2012 можно задействовать "аналитику" - оконные функции( тынц: как пример реализации)
3 фев 14, 11:46    [15509127]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить