Nếu bạn cần tạo CHẾ ĐỘ XEM, bạn có thể sử dụng một cái gì đó như sau:
CREATE VIEW First_Four AS
SELECT c1.*
FROM
Child_Table c1 LEFT JOIN Child_Table c2
ON c1.ParentID = c2.ParentID
AND (STR_TO_DATE(c1.`date`, '%m/%Y')>STR_TO_DATE(c2.`date`, '%m/%Y')
OR (STR_TO_DATE(c1.`date`, '%m/%Y')=STR_TO_DATE(c2.`date`, '%m/%Y')
AND c1.ID>c2.ID)
)
GROUP BY
c1.ID, c1.ParentID, c1.`Date`, c1.Data
HAVING
COUNT(c2.ID)<4
Tôi đang coi dữ liệu trường là cột VARCHAR, vì vậy chúng tôi cần sử dụng STR_TO_DATE, nếu không, chúng tôi chỉ có thể so sánh c1. date
với c2. date
trực tiếp.
Vui lòng xem fiddle tại đây .