sql >> Database >  >> RDS >> Mysql

Een specifieke waarde opvragen met draaitabel mySQL

probeer deze vraag. Ik denk dat je de HAVING . kunt gebruiken clausule.

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 In de sqlFiddle heb ik voorbeeldgegevens voor 2 verschillende toernooi-id's en de HAVING clausule wordt toegepast zodat alleen waarden voor die toernooi-id worden geretourneerd, je kunt proberen de HAVING te verwijderen en te zien dat deze 2 rijen retourneert.

Uw Group By is niet standaard omdat u ook id en form_id selecteert. Ik stel voor dat je de id laat vallen of MIN(id) of MAX(id) en GROUP BY lead_id,form_id gebruikt



  1. MYSQL en RDBMS

  2. MySql selecteert dynamische rijwaarden als kolomnamen

  3. Voeg tabellen samen in twee databases met behulp van SQLAlchemy

  4. Android studio applicatie verbinding met mysql