View Full Version : Querys in SQL wandeln und setsppfp
Moin moin,
versuche es jetzt mal mit RTVQMQRY. Ist auch eine gute Gelegenheit mal die nicht mehr benötigten QRY auszumisten. Sammelt sich doch viel an.
Danke für die schnellen Tips.
Wie bereits oben beschrieben, liefert der RTVQMQRY ausschließlich das SQL.
Die fehlenden Output-Infos gibts weiterhin nur mit den oben genannten Hilfsmitteln.
Zu beachten ist lediglich, dass der erstellte Query übrigens immer einen Inner join produziert, da die Joinbeziehung in der Where-Klausel steht.
Die Art der Beziehung (1, 2, 3) aus dem QRYDFN bekommt man leider nur per WRKQRY.
... das mit dem inner join stimmt so nicht mehr.
D*B
... das mit dem inner join stimmt so nicht mehr.
D*B
Ich hätte da auch eine Frage dazu:
Im Query haben wir die Beziehung 2 genutzt. Ich weiß, dass sich das query nicht wie beim SQL mit left outer join verhält weil:
Datei 1 mit Datei 2 verknüpft über Beziehung 2
Einen select auf Datei 1 und einen select auf Datei 2 gemacht. Wähle ich bei Datei 2 einen Wert aus, den es nicht gibt, dann bekomme ich keine Daten obwohl Sätze für Datei 1 existieren. Ich denke, das funktioniert mit dem QRY/400 leider immer noch nicht.
Ich hatte erwartet, dass Datei 1 Daten angezeigt werden und Daten der Datei 2 entweder blanks oder null sind.
Danke.
Gruß Klaus
Ich hätte da auch eine Frage dazu:
Im Query haben wir die Beziehung 2 genutzt. Ich weiß, dass sich das query nicht wie beim SQL mit left outer join verhält weil:
Datei 1 mit Datei 2 verknüpft über Beziehung 2
Einen select auf Datei 1 und einen select auf Datei 2 gemacht. Wähle ich bei Datei 2 einen Wert aus, den es nicht gibt, dann bekomme ich keine Daten obwohl Sätze für Datei 1 existieren. Ich denke, das funktioniert mit dem QRY/400 leider immer noch nicht.
Ich hatte erwartet, dass Datei 1 Daten angezeigt werden und Daten der Datei 2 entweder blanks oder null sind.
Danke.
Gruß Klaus
... kann ich nicht nachvollziehen. Wenn ich im Query Verknüpfung 2 auswähle und dann bei Satzauswahl einen Vergleichswert wähle, den es nicht gibt (was immer das soll), dann kriege ich da auch nix.
D*B
ich schon, siehe Beispiel:
select PTPTNO, LGR2TEXT
from spefil.ptmstp as t1
left outer join spefil.lgrmstp2 t2 on t1.pttxid = t2.LGR2TXID and LGR2LNGC = 'XX';
XX gibt es nicht.
Result:
PART DESCRIPTION
D1B57-08355-000 (null)
D1507-08255-000 (null)
D1507-100G8-000 (null)
das gleiche hätte ich gerne im QUERY/400.
Gruß Klaus
Das geht deshalb nicht, da du deine Where-Klausel in den Join gepackt hast.
Query/400 macht das aber so, es gibt Beziehungen und es gibt Filter.
select PTPTNO, LGR2TEXT
from spefil.ptmstp as t1
left outer join spefil.lgrmstp2 t2 on t1.pttxid = t2.LGR2TXID
where LGR2LNGC = 'XX'
Somit wird aus dem Left wieder ein Inner.
Danke, das ist auch mein Verständnis.
Leider kann man im QRY ja nicht in den Beziehungen sagen: LGR2LNGC = 'XX'
Stimmt, deshalb gibts ja QRY, QMQRY (ist in der Spaltenanzahl begrenzt, erlaubt aber auch Parameter) und eben SQL.
Übrigens kann man mit ACS=>SQL-Abfragen nun auch nach Excel exportieren.
... das Thema war - nach meinem Verständnis - allerdings, dass ich Queries habe und die in SQL umsetzen will und nicht umgekehrt.
D*B