नीचे दिए गए प्रत्येक समूह के लिए पंक्ति संख्या उत्पन्न करने का प्रयास करें और नीचे पंक्ति संख्या को सीमित करने के बजाय मैं प्रति समूह 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