2012-04-02 9 views

Antwort

1

Was

select total, xxx 
from (
    SELECT total, (select my_count from x where .. etc) as XXX 
    FROM sales 
    ) 
WHERE XXX > 0; 
+0

Wenn ich dies versuche, bekomme ich einen Fehler und kann nicht beheben http://StackOverflow.com/Questions/1888779/Every-Derived-Table-Must-Have-Iss-own-Alias ​​ – Brettski

+0

@Brettski: Nur zuweisen ein Alias ​​für den FROM-Subselect, wie in: '... FROM (...) some_alias WHERE ...' –

0

Dies ist eine wirklich seltsame Abfrage ist.
Warum setzen Sie die WHERE-Bedingung nicht in die Unterabfrage?

SELECT total, (select my_count from x where .. AND my_count > 0) as XXX 
FROM sales 

Und Sie bekommen einen Fehler, weil Sie nicht das Ergebnis einer Unterabfrage als Spaltennamen verwenden können.

+0

Ich habe mehrere Spalten von Unterabfragen, grundsätzlich Bestellungen in den letzten 1, 3, 6 Monaten, wollte eine Filterung basierend auf Ergebnissen – Brettski

+0

Aber Sie verbinde nichts mit der Hauptabfrage. Können Sie ein besseres Beispiel geben? – rgafonso

+0

Diese Abfrage gibt 'total, null' zurück, wenn 'my_count <= 0', und filtert den Datensatz nicht. Ich glaube an '..' Teil der Unterabfrage, er macht etwas mit' sales' Tabelle. –