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

Откуда:
Сообщений: 2
Добрый день. У меня возник вопрос. Могу ли я написать запрос, который мог бы мне формировать данные примерно в таком виде.

Если да, то какими способами попробовать можно? Может какой-то софт есть?!
https://cloud.mail.ru/public/8Jgp/VRKjtxc1E

К сообщению приложен файл. Размер - 10Kb
6 фев 17, 13:45    [20184472]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на выборку  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6802
Vladislav Abd,

можете, начиная от любых BI, заканчивая Reporting Services
6 фев 17, 13:50    [20184498]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на выборку  [new]
Wlr-l
Member

Откуда:
Сообщений: 599
Примерно можно и так:
with object(obj_id, objectName) as (
 select        '1', 'Объект 1' union all
 select        '2', 'Объект 2'
)
, inspection(obj_id,               inspTxt, inspDate) as (
 select           1, 'Дата проверки',       '20170206' union all
 select           1, 'Дата след. проверки', '20170206' union all
 select           2, 'Дата проверки',       '20170206' union all
 select           2, 'Дата след. проверки', '20170206'
)
, events (obj_id, num, eventsName,   eventsDate) as (
 select        1, '1', 'events 11', '20170206' union all
 select        1, '2', 'events 12', '20170206' union all
 select        2, '1', 'events 21', '20170206' union all
 select        2, '2', 'events 22', '20170206'
)
, A(g,obj_id, objNum, objectName, b)  as (
select 0,   obj_id, obj_id, replicate(' ',10)+objectName+replicate(' ',10), '' from object
union all
select 1, i.obj_id, '', inspTxt, inspDate
  from inspection i
  join object     o on o.obj_id=i.obj_id
union all
select 3,   obj_id, '', '      Мероприятия',''
  from object
union all
select 4, e.obj_id, '', num+'.'+eventsName,eventsDate
  from events     e
  join object     o on o.obj_id=e.obj_id
)
select objNum,objectName, b
  from A
order by obj_id, g;

Результат:

1 Объект 1
Дата проверки 20170206
Дата след. проверки 20170206
Мероприятия
1.events 11 20170206
2.events 12 20170206
2 Объект 2
Дата проверки 20170206
Дата след. проверки 20170206
Мероприятия
1.events 21 20170206
2.events 22 20170206
7 фев 17, 15:01    [20189198]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на выборку  [new]
Vladislav Abd
Member

Откуда:
Сообщений: 2
Wlr-l, большое Вам спасибо!!!
8 фев 17, 13:23    [20192626]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить