Freezer: Spalten als Variablen verwenden

Beitrag lesen

hiho,

danke für deine Antwort. Nun hab ich das problem dass ich in den variablen den falschen wert habe und ich nicht weiss warum. ich habe das gefühl dass sich die werte in der Spalte alle um eins nach unten verschoben haben. habe ich was falsch gemacht?

SELECT  
       request5_2_1.id,  
       COUNT(task5_2_1.id) AS tasks,  
       @waiting:= SUM(task5_2_1.state='Waiting') AS waiting,  
       @ready:= SUM(task5_2_1.state='Ready') AS ready,  
       @busy:= SUM(task5_2_1.state='Busy') AS busy,  
       @aborted:= SUM(task5_2_1.state='Aborted') AS aborted,  
       @failed:= SUM(task5_2_1.state='Failed') AS failed,  
       @finished:= SUM(task5_2_1.state='Finished') AS finished,  
       CASE  
            WHEN @failed>0 THEN 'Failed'  
            WHEN  
                 @finished>0  
                 AND (@ready=0 || @ready IS NULL)  
                 AND (@busy=0 || @busy IS NULL)  
                 AND (@aborted=0 || @aborted IS NULL)  
                 AND (@waiting=0 || @waiting IS NULL)  
                 THEN 'Finished'  
            WHEN  
                 @waiting>0  
                 OR @ready>0  
                 OR @busy>0  
                 OR @aborted>0  
                 THEN 'Busy'  
            ELSE 'Ready'  
       END AS state  
FROM request5_2_1  
       LEFT JOIN task5_2_1 ON task5_2_1.requestId = request5_2_1.id  
WHERE request5_2_1.id IN (356, 357, 358, 359, 360, 361)  
GROUP BY request5_2_1.id;

gruss