Frage Wie exportiert man das Ergebnis einer MySQL-Anfrage mit phpMyAdmin 3.4.3?


  1. Ich habe einen 30K-Row-Table
  2. Wenn ich eine lange Abfrage mit 50 Zeilen für diese Tabelle ausführe, reduziert eine GROUP-Funktion die Anzahl der Zeilen auf 7 KB
  3. Ich möchte die gruppierten 7K Zeilen als neue Tabelle exportieren oder als a speichern CSV

Wenn ich versuche, zu exportieren, anstatt die gruppierten 7K-Zeilen zu erhalten, erhalte ich die alten 30K-Zeilen vor der Abfrage. Was mache ich falsch und was soll ich tun?

HINWEIS: Ich bin kein Programmierer, daher würde ich eine Lösung, die nur die phpMyAdmin-GUI verwendet, sehr zu schätzen wissen.


30
2017-08-11 22:55


Ursprung


Es wäre sehr hilfreich, die von phpMyAdmin erstellten und verwendeten SQL-Abfragen bereitzustellen. - Bob Ortiz


Antworten:


  1. Führen Sie Ihre SQL-Abfrage auf der SQL-Registerkarte von phpMyAdmin aus.

  2. Führen Sie nach der Ausführung einen Bildlauf nach unten durch und suchen Sie nach "Abfrageergebnisoperationen".

  3. Klicken Sie auf den Link "Exportieren" von oben und Sie erhalten die Seite, um alle Ergebnisse der Abfragen in das gewünschte Format zu exportieren. Das ist es.


49
2017-10-06 06:42



Sehr einfach, weiß nicht warum ich es dort in der Vergangenheit nicht gesehen habe! - Nicholas Decker
Gewählt "Export" aus "Abfrageergebnisse Operationen" und es zeigt alle Datensätze aus der Tabelle und nicht das Abfrageergebnis. Gibt es noch etwas anderes auszuwählen? - Web_Developer


Verwenden Sie anstelle der Schaltfläche "Exportieren" oben in der grafischen Benutzerschnittstelle die untere im Feld "Ergebnisoperationen abfragen". Das ist die eine, die du willst.

Export button


11
2017-08-12 00:32



Ich hatte auch ein Bild hier hochgeladen - frage mich, wo es hinging. P.S. - Wenn dies Ihr Problem gelöst hat, markieren Sie es bitte als die richtige Antwort. - Sudipta Chatterjee
Vielen Dank! In der aktuellen Schnittstelle gibt es noch Ein weiterer Falsche Schaltfläche "Export", rechts über das Feld "Abfrageergebnisse Operationen". Der Screenshot ist hilfreich. - octern


Sie haben bereits die Abfrage? Sie können mit den Ergebnissen einer anderen Abfrage in eine neue Tabelle einfügen

Sieht aus wie die Schritte, die du brauchst:

  1. Erstellen Sie die neue Tabelle mit allen Spalten.
  2. INSERT INTO newTable (field1, field2, field3) SELECT field1, field2, field3 FROM otherTable GROUP BY field1

Passen Sie für Ihre 50-Zeilen-Abfrage an.


2
2017-08-11 23:04



Danke, lass mich sehen, ob ich verstehe ... (1) create newtable (2) oldtable hat etwa 60 Spalten und alle werden benutzt, also ... INSERT INTO newtable * SELECT * from oldtable (3) setze ich deine Code am Ende meiner bestehenden Abfrage einfügen? - grape
Sie setzen das INSERT INTO vor Ihre Abfrage. Es funktioniert genau wie ein normales INSERT, aber anstatt "VALUES (rowColumn1, rowColumn2, rowColumn3)" zu liefern, liefern Sie stattdessen die Ergebnisse von SELECT. - Reece45


Bei einigen Abfragen ist dies nicht direkt möglich.

Sie müssen das Abfrageergebnis über den Befehl in eine Tabelle schreiben create table as Syntax Und dann können Sie den normalen Exportanweisungen folgen: https://serverfault.com/a/300342/256884


2
2018-06-24 13:06



Wenn Ihre Abfrage eine große Anzahl von Datensätzen (viele Seiten) zurückgibt, ist dies die einzige Lösung. - Nicholas Pickering