Tôi nghĩ rằng cách tốt nhất là tạo một bảng tạm thời với tập hợp các mục cần thiết (thủ tục lấy id mục làm tham số hoặc một cái gì đó dọc theo các dòng đó) và sau đó kết hợp nó với tất cả các bảng trên được kết hợp với nhau.
Nếu đối với một basketid nhất định, bạn KHÔNG có rỗng ở phía bên phải của phép nối bên trái, thì giỏ chứa tất cả các mục cần thiết.