Twilo: MySQL 4.1: mit berechneten Werten weiter rechnen

Hallo,

kann man unter MySQL 4.1 mit berechneten Werten irgendwie weiter rechnen?

In Access ist z.B.Select 1+2 AS wert, wert*1.1 folgendes möglich, unter MySQL 4.1 erhalte ich eine Fehlermeldung
#1054 - Unknown column 'wert' in 'field list'

geht soetwas in der neuen MySQL 5 Version?

mir würde auch ein Stichwort reichen, wonach ich suchen könnte :)

mfg
Twilo

  1. echo $begrüßung;

    kann man unter MySQL 4.1 mit berechneten Werten irgendwie weiter rechnen?
    mir würde auch ein Stichwort reichen, wonach ich suchen könnte :)

    User-Defined Variables

    geht soetwas in der neuen MySQL 5 Version?

    Ja, da auch.

    Beispiel gefällig? SELECT @x:=42 AS test, @x + 1 AS test2

    echo "$verabschiedung $name";

    1. Hallo,

      kann man unter MySQL 4.1 mit berechneten Werten irgendwie weiter rechnen?
      mir würde auch ein Stichwort reichen, wonach ich suchen könnte :)

      User-Defined Variables

      geht soetwas in der neuen MySQL 5 Version?

      Ja, da auch.

      Beispiel gefällig? SELECT @x:=42 AS test, @x + 1 AS test2

      ok, ist zwar etwas umständlicher, aber sicherlich ebsser, als wenn man eine ziemlich lange Formel öfters hinschreiben muss

      wenn man mehrere gleiche Berechnungen durchführt, wird die jedesmal neu berechnet, oder merkt MySQL, dass er das gerade schon berechnet hat und verwendet dann das vorherige Ergebnis?

      Vielleicht kannst du folgende Frage noch bearbeiten
      wird dieser Syntax nur von MySQL untrstützt, oder können das noch andere Datenbanken

      ACCESS und MSSQL EXPRESS kann ich nächste Woche testen

      mfg
      Twilo

      1. echo $begrüßung;

        wenn man mehrere gleiche Berechnungen durchführt, wird die jedesmal neu berechnet, oder merkt MySQL, dass er das gerade schon berechnet hat und verwendet dann das vorherige Ergebnis?

        Kann ich dir nicht sagen, weiß ich nicht. Probier es aus :-)

        Vielleicht kannst du folgende Frage noch bearbeiten
        wird dieser Syntax nur von MySQL untrstützt, oder können das noch andere Datenbanken

        Auch diese Frage kann ich nicht beantworten.

        echo "$verabschiedung $name";

    2. Hiho,

      danke für deine Antwort. ich habe mysql im einsatz und somit konnte ich dein beispiel aus dem anderen forum übernehmen. nun ist es bei mir etwas seltsam. Die werte die da drin abgelegt werden, stimmen nicht mit dem überein, was im query ausgegeben wird. hab ich noch 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