MySQL Forums
Forum List  »  Newbie

Re: crosstab query?
Posted by: laptop alias
Date: November 03, 2009 10:31AM

SELECT u.*
     , y.*
  FROM user u
  LEFT
  JOIN
     (          
       SELECT user_id
            , MAX(CASE WHEN rank = 1 THEN data_date END) date1
            , MAX(CASE WHEN rank = 2 THEN data_date END) date2
            , MAX(CASE WHEN rank = 3 THEN data_date END) date3
         FROM 
            (
              SELECT t1.*
                   , COUNT(*) rank 
                FROM tbl_data t1
                JOIN tbl_data t2 
                  ON t1.user_id = t2.user_id
                 AND t1.data_date >= t2.data_date
               GROUP 
                  BY t1.data_date
            ) x 
        GROUP 
           BY user_id
     ) y
    ON y.user_id = x.user_id;

Options: ReplyQuote


Subject
Written By
Posted
November 03, 2009 10:13AM
November 03, 2009 10:20AM
Re: crosstab query?
November 03, 2009 10:31AM
November 03, 2009 10:54AM
November 03, 2009 11:01AM
November 03, 2009 11:04AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.