Сценарий: Мне нужно подготовить документацию на лист Excel для матрицы разрешений. Всего 15 ролей и 20 модулей в приложении, используя определенную пользователем функцию для передачи ролей и модуля, я получаю данные о разрешении отдельной роли, и я могу скопировать и вставить в лист excel.Объединение нескольких наборов результатов в одну таблицу
Но в дальнейшем я повторяю ту же задачу в 300 раз. Чтобы уменьшить работу, я планирую объединить все полномочия роли в модуле. Поэтому я могу выполнить эту задачу только 20 раз.
Что я пробовал: Я создал функцию UDF для разделения результатов, разделенных запятыми, из SP в столбце wise. Также создайте 20 переменных для хранения сведений о разрешении каждой роли в формате таблицы.
Примеры данных и таблиц: Учитывайте, что каждый @UDF_Function
хранит данные о разрешении каждой роли, и я хочу отобразить все результаты в одном формате таблицы.
DECLARE @UDF_Function1 TABLE (Details VARCHAR (10));
INSERT INTO @UDF_Function1 (Details)
SELECT 'hidden' UNION ALL SELECT 'edit' UNION ALL SELECT 'edit';
DECLARE @UDF_Function2 TABLE (Details VARCHAR (10));
INSERT INTO @UDF_Function2 (Details)
SELECT 'view' UNION ALL SELECT 'edit' UNION ALL SELECT 'view';
-- SELECT * FROM @UDF_Function1;
-- SELECT * FROM @UDF_Function2;
SELECT F1.Details AS R1, F2.Details AS R2 FROM
(SELECT * FROM @UDF_Function1) F1,
(SELECT * FROM @UDF_Function2) F2;
Результат вывода не в ожидаемом формате, как я могу достичь ожидаемого формата, как показано ниже?
Ожидаемый результат:
| R1 | R2 |
|---------------------|
| hidden | view |
| edit | edit |
| edit | view |
Шахта SQL Server 2012.
Возвращает мой ожидаемый результат, спасибо. – Arulkumar