Crear dinámicamente columnas sql
Tengo una mesa de clientes
Customer ID Name
1 John
2 Lewis
3 Mary
Tengo otra mesa CustomerRewards
TypeID Description
1 Bronze
2 Silver
3 Gold
4 Platinum
5 AnotherOne
Y la mesa final
RewardID TypeID CustomerID
1 1 1
2 1 1
3 2 1
4 2 2
La tabla customerTypes es dinámica, muchos de estos tipos se pueden agregar y eliminar. Básicamente, todo lo que quiero es que las columnas se generen dinámicamente y una cuenta en cada una, algo así como
CustomerName Bronze Silver Gold Platinum AnotherOne total
John 2 1 0 0 0 3
Lewis 0 1 0 0 0 1
Grand TOTAL 2 2 0 0 0 4
El problema, como lo dije, es que los tipos son dinámicos y los clientes son dinámicos, así que necesito que las columnas sean dinámicas dependiendo de los tipos en el sistema.
He etiquetado c # ya que necesito esto en un DataGridView
Gracias por adelantado