Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Nhiều đến nhiều bàn Tham gia với Pivot

Bạn cần chỉ định một DISTINCT , tức là

select users.name, group_concat( DISTINCT programs.name)

Xem tài liệu MySQL tại đây .

Hãy thử thay đổi truy vấn của bạn thành:

SELECT users.name, group_concat(programs.name) 
from users
LEFT JOIN linker on linker.user_id = users.id
LEFT JOIN programs on linker.program_id = programs.id
GROUP BY users.id

Điều này sẽ cung cấp cho bạn một null cho bất kỳ người dùng nào không có chương trình nào được liên kết với họ. Để lọc chúng ra, chỉ cần thêm WHERE programs.id IS NOT NULL .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MyISAM so với InnoDB

  2. cách lấy văn bản từ tệp pdf và lưu vào DB

  3. Chèn vào cơ sở dữ liệu từ xa ASIFormDataRequest:Lấy mã 400, Yêu cầu sai

  4. Các trường trong bảng mysql - Id tài nguyên # 7

  5. Cách xóa màn hình MySQL đã mở thông qua Máy khách dòng lệnh MySQL trên Windows XP