Tengo la siguiente query :
Select usuario ,
(case when categoria=7 then 'CATEGORIA 7'
when categoria=8 then ' CATEGORIA 8'
when categoria=9 then ' CATEGORIA 9' end)
from tabla
where servicio = 1
order by 1
Lo que obtengo es algo asi:
++++++++++++++++++++
+COLUMNA1 + COLUMNA2 +
++++++++++++++++++++
+ usuario1 + CATEGORIA 7 +
+ usuario1 + CATEGORIA 9 +
+ usuario2 + CATEGORIA 9 +
+ usuario3 + CATEGORIA 7 +
+ usuario3 + CATEGORIA 8 +
+ usuario3 + CATEGORIA 9 +
++++++++++++++++++++
tengo la siguiente query tambien:
select usuario ,
(case when categoria=7 then 'X' end) 'CATEGORIA 7',
(case when categoria=8 then 'X' end) 'CATEGORIA 8',
(case when categoria=9 then 'X' end) 'CATEGORIA 9'
from tabla
where servicio = 1
order by 1
Y lo que obtengo es algo asi :
++++++++++++++++++++++++++++++++++++++++
+ COLUMNA1 + CATEGORIA 7 + CATEGORIA 8 + CATEGORIA 9 +
++++++++++++++++++++++++++++++++++++++++
+ usuario1 + X + NULL + NULL +
+ usuario1 + NULL + NULL + X +
+ usuario2 + NULL + NULL + X +
+ usuario3 + X + NULL + NULL +
+ usuario3 + NULL + X + NULL +
+ usuario3 + NULL + NULL + X +
++++++++++++++++++++++++++++++++++++++++
PERO LO QUE NECESITO ES ALGO ASI :
++++++++++++++++++++++++++++++++++++++
+COLUMNA1 + COLUMNA2 +
++++++++++++++++++++++++++++++++++++++
+ usuario1 + CATEGORIA 7 CATEGORIA 9 +
+ usuario2 + CATEGORIA 9 +
+ usuario3 + CATEGORIA 7 CATEGORIA 8 CATEGORIA 9 +
++++++++++++++++++++++++++++++++++++++
O
++++++++++++++++++++++++++++++++++++++++
+ COLUMNA1 + CATEGORIA 7 + CATEGORIA 8 + CATEGORIA 9 +
++++++++++++++++++++++++++++++++++++++++
+ usuario1 + X + NULL + X +
+ usuario2 + NULL + NULL + X +
+ usuario3 + X + X + X +
++++++++++++++++++++++++++++++++++++++++
Es posible lograrlo sin funciones ?