Ankündigung

Einklappen
Keine Ankündigung bisher.

Mehrere SELECTs mit unterschiedlichen Spalten und Spalte mit Identifikitation

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mehrere SELECTs mit unterschiedlichen Spalten und Spalte mit Identifikitation

    Hallo zusammen,

    ich steh vor einem "kleinem" Problem.

    Und zwar möchte ich 3 Tabellen mit einem query abrufen die tabellen sehen in etwa so aus (Die Tabellen haben nichts miteinander zu tun):

    Tabelle 1
    id category country
    1 cata counta
    Tabelle 2
    id irgendwas nochwas nochnochwas
    1 irgendwasa nochwasa nochnochwasa
    2 blablaa blablaaa blalblaa
    Tabelle 3
    id spalte nochEineSpalte
    6 daten nochmehrdaten
    Das ganze sollte so aussehen (Ich habs mit Full Join, Union etc versucht hat aber nicht geklappt):
    id category country id irgendwas nochwas nochnochwas id spalte nochEineSpalte IDENTIFIKATION
    1 cata counta Tabelle1
    1 irgendwasa nochwasa nochnochwasa Tabelle2
    2 blablaa blablaaa blalblaa Tabelle2
    6 daten nochmehrdaten Tabelle3
    Ich hoffe jemand kann mir weiterhelfen.

    Danke im voraus

  • #2
    Zeige einen SQL Dump(create ...) mit Testdaten und mit deinem Versuch das umzusetzen.

    Kommentar


    • #3
      Wieder das übliche...

      Es fehlt die Tabellenstruktur als SQL-Code.
      Es fehlen Beispieldaten als SQL-Code.
      Und es fehlt die probierte SQL-Abfrage mit dem fehlerhaften Ergebnis.

      Kommentar


      • #4
        Zitat von hellbringer Beitrag anzeigen
        Wieder das übliche...

        Es fehlt die Tabellenstruktur als SQL-Code.
        Es fehlen Beispieldaten als SQL-Code.
        Und es fehlt die probierte SQL-Abfrage mit dem fehlerhaften Ergebnis.
        Natürlich. Dennoch kann man sehen, daß der Fragesteller bis jetzt UNION noch nicht in der Doku gefunden hat.
        PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

        Kommentar


        • #5
          Zitat von akretschmer Beitrag anzeigen

          Natürlich. Dennoch kann man sehen, daß der Fragesteller bis jetzt UNION noch nicht in der Doku gefunden hat.
          Er behauptet (#1), er habe es mit UNION versucht.

          Mich würde, casa47, eher interessieren, was das Ganze soll??

          Kommentar


          • #6
            Zitat von Alf2016 Beitrag anzeigen
            Er behauptet (#1), er habe es mit UNION versucht.
            Ah, überlesen. Kann ja mal passieren, bei der grottigen Formatierung ...
            PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

            Kommentar


            • #7
              OT:
              Zitat von Alf2016 Beitrag anzeigen
              Mich würde, casa47, eher interessieren, was das Ganze soll??
              Will ich gar nicht wissen...

              @casa47: Mit UNION bist du schon auf den richtigen Weg. Du must nur dafür sorgen, das alles was du mit UNION verbindest die gleichen Spalten enthalten.
              Probier mal das hier und schau dir das Resultat an.
              Code:
              SELECT 'a' AS a, null as b 
              UNION 
              SELECT null as a, 'b' as b;
              Den Rest bekommst du allein hin.

              LG jspit


              Kommentar


              • #8
                Union passt nicht, weil die Daten nebeneinander liegen sollen. (Ah, der Vorschlag von jspit erledigt das per Handarbeit)
                Ein Join offensichtlich ohne Kriterien wäre dann normalerweise ein "full outer join"
                Das ergäbe tatsächlich die lückenhafte Darstellung laut Anforderung, fertig.

                Das kann mysql aber nicht, also braucht man einen würgaround mit einer Kombination left join union right join oder, weil's eh nicht joinen soll die Variante von jspit, die einfach "etwas Liebe" bei der Gestaltung des Statements benötigt.





                Kommentar


                • #9
                  Ein UNIJOIN sozusagen
                  Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                  Kommentar


                  • #10
                    Code:
                    SELECT * FROM tabelle1, tabelle2, tabelle3
                    sorry, shift-taste kaputt

                    Kommentar


                    • #11
                      Du schreibst, die drei Tabellen haben nicht miteinander zu tun. So wie du es möchtest geht es nicht. Die Tabellen müssen eine Beziehung wie z.B.: Rechnung und RechnungPos. Die Tabelle RechnungPos hat ein ForeignKey RechnungID. Damit kannst du per JOIN beide miteinander verbinden und alle Felder aus Rechnung und aus RechnungPos in einem Select ausgeben.Du musst also kein Konzept überdenken. Eine Variante wäre, du machst drei einzelne Querys und schreibst es jeweils in einem Array. Die drei Arrays kannst du zu einem mehrdimensionales Array zusammenfassen.

                      Kommentar


                      • #12
                        Zitat von Meister1900 Beitrag anzeigen
                        Code:
                        SELECT * FROM tabelle1, tabelle2, tabelle3
                        Der ist gar nicht mal so schlecht, der Vorschlag, angesichts der dünnen Datenlage.

                        Kommentar


                        • #13
                          Zitat von protestix Beitrag anzeigen

                          Der ist gar nicht mal so schlecht, der Vorschlag, angesichts der dünnen Datenlage.
                          Das Vorhaben des TE ist Schrott. Wenn dann in den letzten 6 Beiträgen, angefangen mit der Bemerkung von jspit , der Sinn und Zweck interessiere ihn nicht weiter an der Fragestellung "rumgemurkst" wird, muß man sich nicht wurdern, wenn da nichts rauskommt.

                          Der Sinn und Zweck des Vorhabens ist das A und O. Möglicherweise liegt R1100 ganz nahe bei der Wahrheit - möglicherweise aber auch nicht.

                          Kommentar


                          • #14
                            Nun ich gehe davon aus, das die 3 Tabellen #1 so nicht in der Realität bestehen sondern nur ein verallgemeinertes und stark vereinfachtes Beispiel darstellen.
                            Wir kennen nicht den Hintergrund und es bringt doch nichts hier tagelang darüber zu spekulieren.

                            Kommentar


                            • #15
                              Zitat von Alf2016 Beitrag anzeigen
                              Er behauptet (#1), er habe es mit UNION versucht.

                              Mich würde, casa47, eher interessieren, was das Ganze soll??
                              Zitat von jspit Beitrag anzeigen
                              OT: ... Will ich gar nicht wissen...
                              Zitat von jspit Beitrag anzeigen
                              Nun ich gehe davon aus, das die 3 Tabellen #1 so nicht in der Realität bestehen sondern nur ein verallgemeinertes und stark vereinfachtes Beispiel darstellen.
                              Wir kennen nicht den Hintergrund und es bringt doch nichts hier tagelang darüber zu spekulieren.
                              ???

                              Kommentar

                              Lädt...
                              X