MySQL for EXCEL (2010) - Benutzerdefinierte Auswahlabfrage

1326
MrsAdmin

Ich habe das Add-In für MySQL für Excel (MS E: 2010) aktiviert (aktuellste Version).
Ich habe meine Verbindung zu meinem Server (nicht lokal) getestet, und alles ist großartig. Allerdings kann ich nirgendwo eine benutzerdefinierte SQL-Auswahlabfrage schreiben / einfügen, um Daten aus verschiedenen Tabellen zu ziehen und nicht nur aus einer Tabelle.

Ist das nicht möglich?

2 weitere Optionen:
1) Ich konnte den Datenbank-Connector verwenden und meinen Server hinzufügen (über den ODBC-Assistenten), jedoch bekomme ich immer Syntaxfehler. Ich habe keine Ahnung, warum meine Syntax in MySQL Workbench einwandfrei funktioniert haben sowohl mit ANSI- als auch mit Unicode-Optionen versucht).

2) Führen Sie ein VBAMakro aus, um eine .batDatei auszulösen, die meine .sql scriptin MySQL Workbench startet, um die Abfrage auszuführen, und speichern Sie sie in .csv oder .txt auf der Festplatte

3) (Ich habe heute einen Teil zur Arbeit bekommen), habe ein VBA-Makro mit MS Power Query ausgeführt, der Bericht ist korrekt, jedoch wird das Makro für die Automatisierung nicht aufgezeichnet. :(

Dies sind meine 3 (4) Optionen und jede funktioniert nicht. Welches passt am besten?

Prost.

Hier ist ein Beispiel meiner SELECTAnfrage:

USE `store_cart`; Select  T5.orders_id As OID, DATE_FORMAT(T5.date_purchased, '%Y-%m-%d') As ODate, T3.products_name As PName, T3.products_id As PID, T2.products_quantity As Qty, T2.products_price As PrOrig, T5.currency As Cur, "1" As CurVal, (select PrOrig) * (select CurVal) as PrBase, From /*PREFIX*/products T1 Left Join /*PREFIX*/orders_products T2 On (T1.products_id = T2.products_id) Inner Join /*PREFIX*/orders T5 On (T5.orders_id = T2.orders_id) Inner Join /*PREFIX*/products_description T3 On (T1.products_id = T3.products_id) Left Join /*PREFIX*/products_to_categories P2 On (T3.products_id = P2.products_id) Inner Join /*PREFIX*/customers T6 On T5.customers_id = T6.customers_id Left Join /*PREFIX*/paypal P1 On (P1.order_id = T5.orders_id) Left Join /*PREFIX*/manufacturers T4 On (T1.manufacturers_id = T4.manufacturers_id) Left Join /*PREFIX*/group_pricing g1 On T6.customers_group_pricing = g1.group_id  Left Join /*PREFIX*/orders_status O1 On (O1.orders_status_id = T5.orders_status) 
2

1 Antwort auf die Frage

1
agtoever

Starten Sie Excel nach der Installation von MySQL für Excel, und gehen Sie zur Registerkarte "Daten". Auf der rechten Seite sollte eine Schaltfläche "MySQL für Excel" angezeigt werden. Dies sollte die beste (und bevorzugte) Methode sein, um eine Verbindung zu einer MySQL-Datenbank herzustellen, indem MySQL für Excel verwendet wird.

MySQL für Excel

Wenn Sie Daten aus verschiedenen Tabellen zusammenfassen müssen, sollten Sie dies am besten in der Datenbank tun. Erstellen Sie dort eine Ansicht (MySQL verfügt über eine Workbench, mit der Sie solche Dinge ganz intuitiv ausführen können), und verwenden Sie diese Ansicht als Grundlage für Ihren Excel-Bericht. Der Vorteil ist, dass jetzt jeder auf diese aggregierten Daten zugreifen kann. Außerdem: Datenbanken sind so optimiert, dass sie Daten zusammenfassen.

Vielen Dank, das möchte ich verwenden, jedoch kann ich meine benutzerdefinierte Abfrage nicht ausführen, bei der Daten aus mehr als einer Tabelle abgerufen werden. Ich möchte nicht 5 Tabellen importieren müssen, um sie dann in Excel selbst zu verbinden. Gibt es keine Möglichkeit, MySQL für Excel zur Ausführung einer benutzerdefinierten Abfrage mit mehreren Tabellen zu veranlassen? Ich glaube nicht, dass es so ist. :( MrsAdmin vor 9 Jahren 0
Die logischste Lösung wäre, eine Ansicht in der von Ihnen verwendeten Datenbank zu erstellen. agtoever vor 9 Jahren 0
Was wirft leider die Frage auf ... wie oder wo? Vielen Dank im Voraus: D [edit] Ich habe Informationen zum Wie gefunden, aber wo ist der beste Ort? auf meinem Server? Das ist außerhalb meiner Liga, denke ich :( MrsAdmin vor 9 Jahren 0
Das ist aber meine Frage - wie mache ich das, was ich tun muss, du antwortest mir bereits, was ich bereits weiß - meine Frage ist, wie ich es umsetzen soll, was ich gerade gefragt habe. :( MrsAdmin vor 9 Jahren 0
Haben Sie Zugriff auf den SQL Server und dürfen Sie eine Sicht in der Datenbank erstellen? agtoever vor 9 Jahren 1
Vielen Dank für Ihre Anleitung. Ich habe die Vorgehensweise in MySQL Workbench gefunden und konnte die "Ansicht" in Excel sehen. Ich stoße jetzt auf Fehler, "System.Byte []", und ich kann eine neue Frage stellen das aber. Ich weiß, warum der Fehler vorhanden ist (es ist eine auf Berechnungen basierende Spalte), ich weiß nicht, wie ich ihn beheben kann. Wenn Sie Ihre Antwort bearbeiten, markiere ich sie als beantwortet und schreibe meine nächste Frage, danke :) MrsAdmin vor 9 Jahren 0
Schön, dass Sie (teilweise) da sind. Ich habe ein Parapgraph über das Erstellen einer Ansicht und der MySQL-Workbench angehängt. Es tut mir leid, wenn ich in meinen vorherigen (jetzt gelöschten) Kommentaren etwas stumpf war. agtoever vor 9 Jahren 1
Vielen Dank für Ihre Zeit, ich danke Ihnen für Ihre Hilfe. Vielen Dank & keine Entschuldigung nötig. :) MrsAdmin vor 9 Jahren 0