Kann jemand vorschlagen, wie CONNECT BY Oracle Abfrage in Greenplum konvertieren. Greenplum unterstützt keine rekursiven Abfragen. Daher können wir WITH RECURSIVE nicht verwenden. Gibt es alternative Lösung, um die folgende Abfrage neu zu schreiben.Wie CONNECT BY in Greenplum konvertieren
Antwort
Es gibt Möglichkeiten, dies zu tun, aber es wird eine einmalige pro Abfrage sein. Sie müssen eine Funktion erstellen, die Ihre Pfadnodentabelle durchläuft, und "return next", um jede Zeile zurückzugeben. Sie können auf dieser Site nach Beispielen suchen, um dies mit PostgreSQL 8.2 zu tun.
Es wird gearbeitet, um Greenplum nach PostgreSQL 8.3, 8.4 und so weiter zu rebasen. Diese späteren PostgreSQL-Versionen unterstützen "mit rekursivem", was die ANSI SQL-Methode zum Schreiben von SQL ist, aber Greenplum unterstützt es noch nicht. Wenn es von Greenplum unterstützt wird, glaube ich nicht, dass es so gut funktionieren wird. Die Abfrage erzwingt Schleifen und einzelne Zeilensuchen. Dies funktioniert hervorragend in einer OLTP-Datenbank, aber nicht so gut für eine MPP-Datenbank.
Ich empfehle Ihnen, Ihre Daten in Oracle mit einer VIEW zu transformieren und dann nur die Ansicht in eine Datei auszugeben, um sie in Greenplum zu laden. Die DDL mit einer selbstreferenzierenden N-Level-Tabelle wird in einer MPP-Datenbank nie eine gute Idee sein.
- 1. CONNECT BY ohne vorherige
- 2. Oracle CONNECT BY-Klausel nach GROUP BY-Klausel
- 3. Wird UPDATE und CONNECT BY unterstützt?
- 4. Oracle, doppelte Datensätze mit "connect by" Anweisung
- 5. Wie installiere ich die Greenplum Datenbank in Ubuntu 14.04 LTS?
- 6. Mysql connect to PDO konvertieren
- 7. Performance-Tuning mit CONNECT BY LEVEL in Abfrage
- 8. Greenplum gpadmin- [FATAL]: - Unbekannter Host
- 9. Connect Side-by-Side-Rects zu einem großen Rect
- 10. SQL Server entspricht Oracle CONNECT BY und LEVEL Pseudo
- 11. Oracle 11g CREATE VIEW mit CONNECT BY und mehreren Tabellen
- 12. Wie man Eintrag in GREENPLUM log_alert_ * Tabellen stoppt?
- 13. Wie kann ich mich daran erinnern, welchen Weg PRIOR in CONNECT BY Abfragen gehen sollte?
- 14. Fehler: Beziehung existiert nicht, auf greenplum Datenbank
- 15. Wie Firmennamen in iTunes Connect
- 16. Greenplum: gpinitsystem Backout-Skript funktioniert nicht
- 17. Wie GROUP BY in Firebird
- 18. Behalten durch Variablen in R data.table by-by-by
- 19. Connect
- 20. Issue connect to itunes connect
- 21. Ausschließen von Ergebnissen, die in einer anderen Spalte einer CONNECT BY-Abfrage angezeigt werden
- 22. OpenID Connect Provider in Python
- 23. ORDER BY in Joined-Tabelle
- 24. Subdomain in Router :: connect
- 25. Konvertieren von SQL nach LINQ mit Group By und Max
- 26. Wie App löschen in iTunes Connect?
- 27. Connect SQLplus in oracle
- 28. Wie konfiguriere ich connect-mongo
- 29. MySQL ORDER BY IN()
- 30. ORDER BY in SQL
Danke Jon. Ich habe rekursive Funktion erstellt. Es funktioniert gut für N-Level. – Syamala