2016-03-28 6 views
1

enter image description hereMysql Daten mehr Zeilen statt einer Zeile angezeigt werden

Ich mag würde wissen, wie die Daten in eine Zeile basierend auf dem Feldwert oben anzuzeigen habe ich einen Fall auswählen, aber es kommt auf, als das folgende Bild

(SELECT lead_id, 
case lead_id 
case field_number when 1 then value end as firstname 

case field_number when 1 then value end as firstname, 
case field_number when 2 then value end as lastname, 
case field_number when 10 then value end as email, 

enter image description here

Antwort

2

Sie versuchen es mit bedingter Aggregation zu tun (was bedeutet, Sie eine max/min Funktion eine Gruppe von Klausel fehlen):

SELECT lead_id, 
     MAX(CASE WHEN field_number = 1 then value end) as firstname, 
     MAX(CASE WHEN field_number = 2 then value end) as lastname, 
     MAX(CASE WHEN field_number = 10 then value end) as email 
FROM YourTable 
GROUP BY lead_id 
+0

Bemerkenswert, dass dieses Tabellenlayout völlig gegen den Strich geht. –

+0

Dank sagi das war sehr nützlich, ich wusste, dass ich etwas über die Lead ID vermisste. –

+0

BTW ich habe diese Datenbank noch nicht erstellt und die Tabelle und Sie Recht Barry TheHatchet schrecklichen Design. –

Verwandte Themen