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

Cách chọn dữ liệu từ bảng cặp giá trị khóa

Bạn có thể sử dụng tính năng tổng hợp có điều kiện để lấy tất cả thông tin cho cấp độ gốc vào một hàng và sau đó sử dụng where mệnh đề cho điều kiện bắt buộc.

select * from (
select parentid
,max(case when key='name' then value end) as name
,max(case when key='age' then value end) as age
,max(case when key='place' then value end) as place
from tableA
group by parentid 
) t
where place='place1' and age=20

Điều này giả sử chỉ có một hàng cho mỗi khóa trên mỗi cấp độ gốc trong bảng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách cập nhật chỉ một cột của bảng sql bằng tệp csv

  2. Cách tạo mối quan hệ trong MySQL

  3. Sự cố MySQL trên SQL

  4. Không thể kết nối với máy chủ MySQL cục bộ thông qua socket

  5. Giá trị Auto_increment trong InnoDB?