Я хочу преобразовать строки 2 строки как 2 столбца в SQL 2000 без использования сводной - PullRequest
2 голосов
/ 07 июня 2011

Я хочу преобразовать строки 2 строки как 2 столбца в SQL 2000 без использования сводных

например:

A    B    C
---- ---- -------
78   68   3

Я хочу вывод как

Projects  Count
--------- ------- 
A         78
B         68  
C         3

Ответы [ 2 ]

1 голос
/ 07 июня 2011
SELECT
  pivot.field,
  CASE pivot.field
    WHEN 'A' THEN A
    WHEN 'B' THEN B
    WHEN 'C' THEN C
  END as value
FROM
  my_table
CROSS JOIN
  (SELECT 'A' AS field UNION ALL SELECT 'B' UNION ALL SELECT 'C') AS pivot
0 голосов
/ 07 июня 2011

Если я вас правильно понимаю, вам действительно нужен сводный запрос:

select 'A' as Projects, A as my_count from mytab
union all
select 'B' as Projects, B as my_count from mytab
union all
select 'C' as Projects, C as my_count from mytab

(я заменил count на my_count, поскольку COUNT - зарезервированное слово в SQL).

...