Я пытаюсь получить несколько записей из таблицы. У меня есть одна категория, сопоставленная с несколькими подкатегориями. Я хочу имя заголовка в качестве описания подкатегории каждой записи.
Я сделал ниже и разделил категорию с номером строки.
DROP TABLE #temp
CREATE TABLE #temp ( [Description] VARCHAR(100), SubDescription VARCHAR(100), IsOMExceptionRequired bit,IsAMB bit,IsARS bit,escalationtypeid int, CategorySortOrder int, SubcategorySortorder int);
INSERT INTO #temp ([Description], SubDescription, IsOMExceptionRequired ,IsAMB,IsARS,escalationtypeid,CategorySortOrder,SubcategorySortorder)
SELECT C.Description,s.Description, S.IsOMExceptionRequired,s.IsAMB,s.IsARS,CEM.escalationtypeid, c.SortOrder,s.SortOrder
FROM category C
INNER JOIN SubCategory S on C.CategoryID =S.CategoryID
INNER JOIN CategoryEscalationTypeMap CEM on CEM.CategoryID= C.CategoryID
WHERE CEM.escalationtypeid=3 and CEM.IsActive =1 and C.IsActive=1 and S.IsActive=1
order by CEM.escalationtypeid, C.sortorder,S.sortorder;
--select * from #temp;
WITH Temp
AS (
SELECT
Description,
SubDescription,
ROW_NUMBER() OVER ( PARTITION BY Description
ORDER BY Description ) rownumber,
IsOMExceptionRequired,
IsAMB,
IsARS,
escalationtypeid,
CategorySortOrder,
SubcategorySortorder
FROM #Temp
)
SELECT
CASE WHEN Temp.rownumber = 1 THEN Description ELSE '' END [Description],
rownumber,
SubDescription,
CASE WHEN IsOMExceptionRequired = 1 THEN 'YES' ELSE 'N/A' END xxx,
IsAMB,
IsARS,
escalationtypeid,
CategorySortOrder,
SubcategorySortorder
FROM Temp
order by escalationtypeid,CategorySortOrder,SubcategorySortorder;
, но на самом деле мой результат должен быть таким, как показано ниже.