sqlsql-serversql-server-cerow-numbersql-server-ce-4

How to get values alternate for ROW_NUMBER()?


I have a table with values like these:

Name    Order    Innings
Suresh    1         1
Ramesh    2         1
Sekar     3         1
Raju      1         2
Vinoth    2         2
Ramu      3         2

I want the result be like this:

1stInn  2ndInn  Order
Suresh  Raju      1
Ramesh  Vinoth    2
Sekar   Ramu      3

I got the result using ROW_NUMBER() in SQL Server.

I want the same result in SQL Compact, But I can't use ROW_NUMBER() in SQL Compact.

I'm using SQL Compact version - 4.0.8482.1

How can I get the result?


Solution

  • Why do you need ROW_NUMBER()? you can use conditional aggregation using CASE EXPRESSION :

    SELECT MAX(CASE WHEN t.innings = 1 THEN t.name END) as 1stInn,
           MAX(CASE WHEN t.innings = 2 THEN t.name END) as 2sndInn,
           t.Order
    FROM YourTable t
    GROUP BY t.order