1. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

MySQL Mit Ergebnis eines Subquery weiterrechnen, aber wie?

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von Husker, 17 Juli 2019.

  1. Husker

    Husker Neuer Benutzer

    Hallo zusammen, ich habe aktuell ein kleines SQL Problem, wobei es da mehr um eine Optimierung geht.

    Ich habe aktuell ein Select Query

    SELECT Feld1, Feld2, (Subquery1) as 1, (subquery2) as 2
    FROM Table;


    Soweit Funktioniert das ...

    Aber ich möchte jetzt mit 1 und 2 weiter rechnen also quasi so:

    SELECT Feld1, Feld2, (Subquery1) as 1, (subquery2) as 2, 2-1 as Diff
    FROM Table;

    Das Funktioniert leider nicht


    SELECT Feld1, Feld2, (Subquery1) as 1, (subquery2) as 2, (subquery2)-(Subquery1) as Diff
    FROM Table;


    So Funktioniert es, was aber eigentlich Blödsinn ist da er jedes Subquery ja 2 mal ausrechnen muss
    gibt es da einen eleganteren bzw. performanteren weg ?

    Danke schon mal im voraus
     
  2. akretschmer

    akretschmer Datenbank-Guru

    Code:
    
    test=*# select 1 as a,2 as b, (select 10) as c, (select 20) as d;
     a | b | c  | d  
    ---+---+----+----
     1 | 2 | 10 | 20
    (1 row)
    
    test=*# select 1 as a,2 as b, (select 10) as c, (select 20) as d, c+d;
    FEHLER:  Spalte »c« existiert nicht
    LINE 1: ...lect 1 as a,2 as b, (select 10) as c, (select 20) as d, c+d;
                                                                       ^
    test=*# select a,b,c,d, c+d as summe from (select 1 as a,2 as b, (select 10) as c, (select 20) as d) foo;
     a | b | c  | d  | summe
    ---+---+----+----+-------
     1 | 2 | 10 | 20 |    30
    (1 row)
    
    
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden