Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL - प्रत्येक GROUP BY का X नंबर लौटाना

नीचे दिए गए प्रत्येक समूह के लिए पंक्ति संख्या उत्पन्न करने का प्रयास करें और नीचे पंक्ति संख्या को सीमित करने के बजाय मैं प्रति समूह 2 परिणाम दिखा रहा हूं।

   Select
    `marka_name`, `model_name`, `kuzov`, `mileage`, `year`, `rate`from
    (

    SELECT
     @row_num := IF(@prev_value=main.Model_Name,@row_num+1,1) AS RowNumber,
                main.*,
    @prev_value := main.Model_Name
            FROM
                main,
      (SELECT @row_num := 1) x,
          (SELECT @prev_value := '') y
            WHERE
                (
                    (marka_name = 'SUBARU' AND model_name = 'IMPREZA' AND (kuzov = 'GC8' OR kuzov = 'GF8')) OR
                    (marka_name = 'MAZDA' AND model_name = 'RX-7' AND kuzov = 'FD3S') OR
                    (marka_name = 'MITSUBISHI' AND model_name = 'LANCER' AND (kuzov = 'CN9A' OR kuzov = 'CP9A')) OR
                    (marka_name = 'NISSAN' AND model_name = 'SKYLINE' AND (kuzov = 'ER34' OR kuzov = 'BCNR33')) OR
                    (marka_name = 'NISSAN' AND model_name = 'SILVIA' AND kuzov = 'S14') OR
                    (marka_name = 'TOYOTA' AND model_name = 'CELICA' AND kuzov = 'ST205') OR
                    (marka_name = 'TOYOTA' AND model_name = 'ARISTO' AND kuzov = 'JZS161') OR
                    (marka_name = 'MITSUBISHI' AND model_name = 'DELICA' AND (kuzov = 'PE8W' OR kuzov = 'PD8W' OR kuzov = 'PF8W'))
                )
                AND
                (rate != 'RA' AND rate != 'RR' AND rate != 'A1' AND rate != 'A' AND rate != 'R' AND rate >= '3')
                AND
                (mileage >= 0 AND mileage <= 150000)
                AND
                (year >= 1990 AND year <= 1998)
            ORDER BY
                model_name,
                mileage ASC,
                rate DESC) A where A.RowNumber<=2

प्रति समूह 2 से अधिक रिकॉर्ड प्राप्त करने के लिए बस अंतिम को chnage करें जहां क्लॉज जैसे यदि आप प्रति समूह 10 परिणाम देते हैं। लिखें जहां A.RowNumber<=10

एसक्यूएल फिडल डेमो




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक mysql डेटाबेस में लिखने और संग्रहीत करने के लिए बाहरी HD का उपयोग करना

  2. एकाधिक कॉलम पर इंडेक्स कैसे बनाएं

  3. उच्च उपलब्धता के लिए कैमिलो MySQL डेटाबेस को कैसे परिनियोजित करें

  4. Php/mysql में लेनदेन का उपयोग कैसे करें

  5. कोड या डेटाबेस में कैलकुलेशन सेव करें?