Hãy kiểm tra điều này ... để tránh tham chiếu đến cùng một nhóm kết quả, tôi đã tạo một bảng ... bạn nên xóa nó sau khi thực hiện xử lý hoặc thay thế maxcounttemp bằng (SELECT what, loc, count(loc) howmany FROM maxcount GROUP BY what, loc) as tblX
Tôi đã cố đặt nó TẠM THỜI, nhưng bạn không thể sử dụng nó bên trong một truy vấn con nếu bảng bên ngoài là cùng một bảng.
CREATE TABLE `maxcounttemp` (
`what` varchar(1) DEFAULT NULL,
`loc` varchar(1) DEFAULT NULL,
`howmany` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO maxcounttemp (
SELECT what, loc, count(loc) howmany FROM maxcount GROUP BY what, loc
);
SELECT mct.what, mct.loc, mct.howmany
FROM maxcounttemp mct
WHERE (mct.what, mct.howmany) IN (
SELECT mct2.what, MAX(mct2.howmany)
FROM maxcounttemp mct2
WHERE mct2.what = mct.what
GROUP BY mct2.what
) GROUP BY (mct.what);
hy vọng nó sẽ giúp ... hãy nhớ rằng bx hoặc bằng cách tương đương với truy vấn này ...