Пытается понять, как написать динамический сводный sql-оператор. Где TEST_NAME
может иметь до 12 различных значений (при этом имеется 12 столбцов). Некоторые из VAL будут типами данных Int, Decimal или Varchar. Большинство примеров, которые я видел, имеют некоторые из включенного агрегата. Я ищу прямую ценность.Поворот строк в столбцы без агрегата
Source Table
╔═══════════╦══════╦═══════╗
║ TEST_NAME ║ SBNO ║ VAL ║
╠═══════════╬══════╬═══════╣
║ Test1 ║ 1 ║ 0.304 ║
║ Test1 ║ 2 ║ 0.31 ║
║ Test1 ║ 3 ║ 0.306 ║
║ Test2 ║ 1 ║ 2.3 ║
║ Test2 ║ 2 ║ 2.5 ║
║ Test2 ║ 3 ║ 2.4 ║
║ Test3 ║ 1 ║ PASS ║
║ Test3 ║ 2 ║ PASS ║
╚═══════════╩══════╩═══════╝
Desired Output
╔══════════════════════════╗
║ SBNO Test1 Test2 Test3 ║
╠══════════════════════════╣
║ 1 0.304 2.3 PASS ║
║ 2 0.31 2.5 PASS ║
║ 3 0.306 2.4 NULL ║
╚══════════════════════════╝
Отличный ответ, можно ли использовать тот же подход в C#? – Oliver
@Oliver Есть способы поворота на C#, но я не слишком знаком с ними. Я бы предложил посмотреть на некоторые вопросы о SO о linq-to-sql с точкой опоры. Есть несколько, которые можно найти в сводном поиске. – Taryn