Results 1 to 4 of 4

Thread: how to rotate or flip table.

  1. #1
    Join Date
    Feb 2003
    Posts
    34

    how to rotate or flip table.

    I have a key value pair as listed below.

    Key value
    ------ ----------
    name rob
    age 30
    sex male
    ... ...
    ... ...

    would like to see a result set like below.

    name age sex ...
    ---- --- ---- -----
    rob 30 male ...

    Note: the number of key value pairs are unknown.

  2. #2
    Join Date
    Sep 2002
    Posts
    5,938
    Take look at 'Cross-Tab Reports' in sql books online.

  3. #3
    Join Date
    Sep 2002
    Location
    Fantasy
    Posts
    4,254
    create table mykeyvalue ([Key] varchar(10), [value] varchar(100))
    insert into mykeyvalue select 'Name','Rob'
    insert into mykeyvalue select 'Age','30'
    insert into mykeyvalue select 'Sex','Male'

    insert into mykeyvalue select 'Name','Sam'
    insert into mykeyvalue select 'Age','37'
    insert into mykeyvalue select 'Sex','Male'

    insert into mykeyvalue select 'Name','Eiko'
    insert into mykeyvalue select 'Age','19'
    insert into mykeyvalue select 'Sex','FeMale'

    select identity(int,0,1) as ID,[key],[value] into mytable from mykeyvalue


    SELECT [id]/3 as MYID,
    max(CASE [Key] WHEN 'Name' THEN [Value] ELSE NULL END) AS [Name],
    max(CASE [Key] WHEN 'Age' THEN [Value] ELSE NULL END) AS [Age],
    max(CASE [Key] WHEN 'Sex' THEN [Value] ELSE NULL END) AS [Sex]
    FROM mytable group by [id]/3

  4. #4
    Join Date
    Feb 2003
    Posts
    34
    thanks a lot... great solution...

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •