• vs.satheesh (9/14/2016)


    Thank You for replay.My client using SQL server 2005 . This Query not working sqlserver 2005.

    would have been useful if you had posted the error message.....heyho.

    try this instead of the "CROSS APPLY(VALUES....." which I think is causing the error

    SELECT registerno,

    LevelOneMark,

    LeveltwoMark,

    LevelthreeMark,

    FinalMark

    FROM

    (

    SELECT *,

    ROW_NUMBER() OVER(PARTITION BY registerno ORDER BY avalue ASC, FinalMark DESC) rn

    FROM

    (

    SELECT registerno,

    LevelOneMark,

    LeveltwoMark,

    LevelthreeMark,

    ABS(LevelOneMark - LeveltwoMark) AS avalue,

    (LevelOneMark + LeveltwoMark) / 2 AS FinalMark

    FROM ResultData

    UNION ALL

    SELECT registerno,

    LevelOneMark,

    LeveltwoMark,

    LevelthreeMark,

    ABS(LeveltwoMark - LevelthreeMark) AS avalue,

    (LeveltwoMark + LevelthreeMark) / 2 AS FinalMark

    FROM ResultData

    UNION ALL

    SELECT registerno,

    LevelOneMark,

    LeveltwoMark,

    LevelthreeMark,

    ABS(LevelthreeMark - LeveloneMark) AS avalue,

    (LevelthreeMark + LeveloneMark) / 2 AS FinalMark

    FROM ResultData) x

    ) y

    WHERE rn = 1;

    ________________________________________________________________
    you can lead a user to data....but you cannot make them think
    and remember....every day is a school day