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

Откуда:
Сообщений: 17
У меня есть:
- таблица с каталогом жалоб
1. id - id жалобы(уникальное)
2. name - название жалобы с каталога
- таблица с жалобами пациентов
1. id - уникальное число
2. id_patient - связующее поле с id пациента
3. id_reception - связующее поле с id приёма
4. id_complaint - связующее поле с каталогом жалобы
5. result - оценка жалобы, оценка тяжести жалобы
- таблица приёмов пациента
1. id_reception - id приёма(уникальное число)
2. id_patient - id пациента
3. datetime - дата приёма


Можно ли одним запросом вывести следующее:

первый стобик - уникальное число с таблицы с каталога жалоб пациентов.
второй столбик - название жалобы
третий столбик - результат по жалобе(последний приём)
n столбик - результат по жалобе(первый приём)
От третьего до n-го столбика название поля должно быть с датой приёма
23 апр 17, 06:39    [20425890]     Ответить | Цитировать Сообщить модератору
 Re: Запрос для формирования таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31328
VictorDnepr
От третьего до n-го столбика название поля должно быть с датой приёма
Такой запрос на сиквеле сделать трудно, потому что количество столбиков для каждого пациента будет разным.

Поэтому придётся делать динамический SQL, формировать список слолбцов. И такой запрос будет работать только для данных одного пациента.

Или нужно как то изменить постановку задачи.
23 апр 17, 10:17    [20426070]     Ответить | Цитировать Сообщить модератору
 Re: Запрос для формирования таблицы  [new]
VictorDnepr
Member

Откуда:
Сообщений: 17
alexeyvg, данные необходимы определённого пациента. Если Вы можете написать примерный запрос, буду Вам благодарен.
23 апр 17, 11:45    [20426243]     Ответить | Цитировать Сообщить модератору
 Re: Запрос для формирования таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31328
VictorDnepr
Если Вы можете написать примерный запрос, буду Вам благодарен.
Поищите "динамический PIVOT" на этом форуме, тут много было такого.
Но запрос непростой. Удобнее такое делать просто в клиенте
23 апр 17, 20:27    [20426983]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить