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

Truy vấn một giá trị cụ thể với Pivot Table mySQL

hãy thử truy vấn này. Tôi nghĩ bạn có thể sử dụng HAVING mệnh đề.

SELECT id, lead_id, form_id, 
MAX(case when field_number = 1 then value end) username, 
MAX(case when field_number = 7 then value end) email, 
MAX(case when field_number = 6 then value end) tournament_name, 
MAX(case when field_number = 3 then value end) primary_golfer, 
MAX(case when field_number = 4 then value end) backup_golfer, 
MAX(case when field_number = 5 then value end) date, 
MAX(case when field_number = 8 then value end) tournament_id 
FROM `wp_rg_lead_detail` GROUP BY lead_id
HAVING tournament_id = '5b409692-e9ed-486e-8d77-7d734f1e023d'

sqlFiddle Trong sqlFiddle, tôi có dữ liệu mẫu cho 2 giải đấu khác nhau và HAVING mệnh đề được áp dụng để chỉ các giá trị cho giải đấu_id đó được trả về, bạn có thể thử xoá HAVING và thấy rằng nó trả về 2 hàng.

Nhóm Theo của bạn không chuẩn vì bạn cũng đang chọn id và form_id. Tôi khuyên bạn nên bỏ id hoặc sử dụng MIN (id) hoặc MAX (id) và GROUP BY lead_id,form_id



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JSON_SET () - Chèn hoặc cập nhật giá trị trong tài liệu JSON trong MySQL

  2. Xếp hạng các vị trí chung trong MySQL

  3. Nhập tệp CSV lớn vào MySQL

  4. Giải pháp cho phạm vi TIMESTAMP giới hạn của MySQL?

  5. Con số trong ngoặc đơn thực sự có ý nghĩa gì?