![]() |
In View Tabellen unterscheiden
Hallo @all,
habe mich jetzt ihr ![]() ( nur das ich nicht alles nochmal erklären muss :) ) Also in dem View will ich jetzt mehr als eine Spalte (mit UNION) aus zwei Tabellen aufnehmen. Wie kann ich es machen, dass ich bei jedem Datensatz aus dem View unterscheiden kann ob dieser aus der ersten oder aus der zweiten Tabelle kommt. :coder: |
Re: In View Tabellen unterscheiden
Beispiel:
SQL-Code:
Select ID, ( Cast ("KUNDEN") as Varchar( 50 ) ) as Tabellenname from Kunden Union Select ID, ( Cast ("LIEFERANTEN) as Varchar( 50 ) ) as Tabellenname from Lieferanten |
Re: In View Tabellen unterscheiden
Hallo Funky-Sepp,
Danke!!!! :thuimb: Irgendwie sehe ich heute den Wald vor lauter Bäumen nicht. :wall: |
Re: In View Tabellen unterscheiden
Bitte :-D
:wall: <-- ist das nicht etwas zu schmerzhaft? |
Re: In View Tabellen unterscheiden
Ok habe mich beruhigt :dancer2: und Kaffee geholt und jetzt gehts weiter. :coder:
:cheers: Funky-Sepp |
Re: In View Tabellen unterscheiden
@ Funky-Sepp und auch alle anderen
SQL-Code:
das funktioniert nicht bei mir der Fehler kommt beim Cast.
Select ID, ( Cast ("KUNDEN") as Varchar( 50 ) ) as Tabellenname from Kunden
Union Select ID, ( Cast ("LIEFERANTEN) as Varchar( 50 ) ) as Tabellenname from Lieferanten Das geht:
SQL-Code:
:gruebel: Aber wie bekomme ich das mit dem Cast hin, denn das mit dem zusätzlichen Leerzeichen bei Faults ist nicht die schönste Lösung.
Select SBatchNo,'Faults ' as Tabelle from Log_Faults
Union all Select SBatchNo,'Actions' as Tabelle from Log_GxP_Actions Info: Ich benutze Interbase 6.01 und die IBX-Komponenten für den Zugriff. |
Re: In View Tabellen unterscheiden
Wozu die Leerzeichen?
Bei mir klappt sowas auch ohne Cast oder alle Strings auf gleiche Länge zu schreiben. |
Re: In View Tabellen unterscheiden
Interbase Fehlermeldung aus Marathon :wall: ( da komme ich nicht gegen an )
ISC ERROR CODE:335544569 ISC ERROR MESSAGE: Dynamic SQL Error SQL error code = -104 Invalid command Data type unknown :gruebel: bei bei der zuvor benannten SQL ohne das Leerzeichnen SQL Dialect 1, denn Dialect 3 kann ich nicht benutzen. |
Re: In View Tabellen unterscheiden
Hi Cobra.
Hat ein bisschen länger gedauert. Aber ich glaub du kannst keinen Cast bei einem View in Interbase machen, aber die Felder müssen gleichlang sein. Also ist deine Lösung gar nicht schlecht. Ich glaube des geht auch nicht anders. Wie's bei Oracle aussieht weiß ich leider nicht, da ich noch nie mit Oracle gearbeitet habe.
SQL-Code:
Aber vielleicht geht's ja mit der neuen Interbase Firebird??
Select ID, ( Cast ("KUNDEN") as Varchar( 50 ) ) as Tabellenname from Kunden
Union Select ID, ( Cast ("LIEFERANTEN) as Varchar( 50 ) ) as Tabellenname from Lieferanten Hab die leider grad nicht zur hand. mfg Wolfgang |
Re: In View Tabellen unterscheiden
Hallo Funky-Sepp
Habe jetzt den View zusammen und es ´funktioniert alles wunderbar. 8) :thuimb: Hier mal die kleine SQL dazu :lol:
SQL-Code:
:dancer: :dancer2:
Select A.PK_Log_Faults as PK ,A.SBatchNo,A.DTTimeStamp,A.SProductName,'F+' as Tabelle,
B.SDescription1,E.SUser_Name1,E.SUser_Name2 from Log_Faults A Join Faults B on A.IFK_Faults = B.PK_Faults AND A.Bogekommen = 'T' Join Log_Faults_ACK E on A.PK_LOG_Faults = E.IFK_LOG_Faults AND E.bosuccess = 'T' Union all Select A.PK_Log_Faults as PK,A.SBatchNo,A.DTTimeStamp,A.SProductName,'F-' as Tabelle, B.SDescription1,E.SUser_Name1,E.SUser_Name2 from Log_Faults A Join Faults B on A.IFK_Faults = B.PK_Faults AND A.Bogekommen = 'F' Join Log_Faults_ACK E on A.PK_LOG_Faults = E.IFK_LOG_Faults AND E.bosuccess = 'T' union all Select C.PK_Log_GxP_Actions as PK,C.SBatchNo,C.DTTimestamp,C.SProductName,' A' as Tabelle, D.SDescription1,C.SUser_Name1, C.SUser_Name2 from Log_GxP_Actions C Join GXP_Actions D on C.IFK_GXP_Actions = D.PK_GxP_Actions |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz