Tôi đang thực hiện một số lựa chọn và muốn tính toán chồng chéo. Ví dụ:SQL chọn đa dạng các mục trong union
SELECT id FROM foo WHERE ...
SELECT id FROM bar WHERE ...
SELECT id FROM baz WHERE ...
Gọi các truy vấn này a, b và c tương ứng. Giả sử một số (1,2,3,4,5), b cho (1,3,5), và c cho (4,5,6). Tôi muốn kết hợp những điều này và đếm số lượng. Đối với ví dụ trên, kết quả tôi đang tìm kiếm là
id | multiplicity
-----------------
1 | 2
2 | 1
3 | 2
4 | 2
5 | 3
6 | 1
Làm cách nào để thực hiện điều này trong MySQL5 trong một truy vấn? (Các phần a, b và c có thể là các lựa chọn đơn giản hoặc các thủ tục được lưu trữ).
Bạn đã cố định số lượng bảng và mục nhập hoặc chúng có thể thay đổi? Bạn có thể thay thế mỗi ID bị thiếu bằng 0 và sau đó tổng hợp các phần tử đầu tiên, thứ hai, thứ ba, v.v ... Mặc dù không phải là một giải pháp thanh lịch – Andrew
Tôi thích tính đa dạng ... – Ben