sql >> Database >  >> RDS >> Mysql

Gegevens selecteren uit een sleutelwaardepaartabel

U kunt voorwaardelijke aggregatie gebruiken om alle informatie voor een parent-id op één rij te krijgen en vervolgens een where gebruiken clausule voor de vereiste voorwaarde.

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

Dit veronderstelt dat er slechts één rij per sleutel per parent-ID in de tabel is.



  1. In Oracle AS werkt de alias niet

  2. 40 vragen die u moet weten over R12.2

  3. Risico bij gebruik van dynamisch geheugen binnen Hyper-V

  4. MySQL .Net-verbinding poolverbinding.Open() erg traag