Ich versuche, eine Sicht für die folgende Abfrage zu erstellen.
%Vor%Aber nicht dazu in der Lage. Ich benutze MySql Query Browser. Der Fehler, den ich bekomme, ist:
Eine Ansicht kann nur aus einer aktiven Ergebnismenge des SELECT-Befehls
erstellt werden
Kann mir bitte jemand dabei helfen?
Sie können die Reihenfolge von Benutzer-ID und Standort in der zweiten Auswahl ändern. Die Spaltennamen sollten in allen Selektionen der Union mit 1 zu 1 übereinstimmen.
EDIT: Für Abfrage-Browser, als diese weist darauf hin, "zu erstellen eine Sicht aus einer Query, müssen Sie die Query erfolgreich ausgeführt haben, genauer gesagt, die View wird aus der letzten erfolgreich ausgeführten Query erzeugt, nicht unbedingt aus der Query, die sich gerade im Query Area "
befindetSie müssen die Abfrage zuerst ausführen, bevor Sie die Ansicht im Abfrage-Browser erstellen.
Der Fehler stammt vom Abfrage-Browser und nicht von mysql.
Sie haben verschiedene Typen, die in derselben Spalte enthalten sind. (Die Namen können unterschiedlich sein, aber die Typen müssen gleich oder zumindest automatisch umsetzbar sein.) Aber wie @Learning darauf hinweist, sieht es so aus, als hätten Sie die SELECT-Spaltenaufzählungen verdreht.
Nur für den Fall, die richtige Syntax (die für mich funktionierte) ist
%Vor%Nur eine kleine Bemerkung über UNION. UNION gibt nur die eindeutigen Werte der Ergebnismenge zurück. Es ist also nicht notwendig, SELECT DISTINCT in Verbindung mit einer UNION zu verwenden. Wahrscheinlich besser für die Leistung, um auch DISTINCT nicht zu verwenden.
Weitere Informationen zu UNION finden Sie hier: Linktext
Die Fehlermeldung ist in "QueryBrowser.pas", Teil von mysql-gui-tools .
%Vor%Es wird ausgelöst, indem a) keine aktive Ergebnismenge und b) die Abfrage den falschen Typ hat.
Macht das Entfernen des "DISTINCT" einen Unterschied? In jedem Fall ist dies ein Fehler in QueryBrowser und nicht in einem MySQL. Das Erstellen der Ansicht direkt in MySQL sollte als Workaround genügen.