Как создать подробный отчет из SQL-запроса - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть запрос, который выглядит следующим образом:

SELECT 
a.Name as 'Name of the program',
a.ContractCode as Code,
case 
when a.IsActive = 1 THEN 'YES'
when a.IsActive = 0 THEN 'NO'
end as ACTIVE,
a.StartDate as 'Contract  Start Date',
a.EndDate as 'Contract  End Date',
case 
when a.Description IS NULL THEN ''
else a.Description 
End as 'Description',
b.Name as 'Service provider’s name',
a.CountryISO2 as 'Country',
c.DisplayName as 'Default Language'

FROM [Config].[Contract] a
join [dbo].[ServiceProvider] b on a.ServiceProviderID = b.ServiceProviderID
join [Config].[Languages] c on a.LanguageId = c.Id

Мне нужно преобразовать каждую строку в подробный отчет, который будет выглядеть следующим образом:

ОТ:

Name Program|Code|ACTIVE|Contract  Start Date|Contract  End Date |Description|Service provider’s name|Country |Default Language

TO:

Name Program: 
Code:
ACTIVE:
Contract  Start Date:
Contract  End Date:
Description:
Service provider’s name:
Country:
Default Language:

Как я могу преобразовать его в SQL / T-SQL?

1 Ответ

0 голосов
/ 21 сентября 2018

Если вы хотите, чтобы это было одной строкой, просто объедините все, с символами новой строки между?

SELECT 
  CONCAT(
    'Name of the program : ', a.name, CHAR(13), CHAR(10),
    'Code : ', a.ContractCode, CHAR(13), CHAR(10),
    'Active : ', case a.IsActive when 1 THEN 'YES' when 0 then 'NO' end, CHAR(13), CHAR(10),
    etc, etc
  )
    AS report_string
FROM [Config].[Contract] a
join [dbo].[ServiceProvider] b on a.ServiceProviderID = b.ServiceProviderID
join [Config].[Languages] c on a.LanguageId = c.Id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...