-
SQL über 2 Dateien
Hallo Kollegen,
ich habe ein Problem und bekomme das nicht gelöst.
Tabelle 1:
Feld_Artikel_Nr
007
Tabelle 2:
Feld_Artikel_Nr Preis
007 1,00
007 2,00
007 3,00
Jetzt möchte ich eine View erstellen die folgendermaßen aussehen sollte:
View:
Ich muss also aus 3 Preisfeldern ein Textfeld (mit concat) erstellen.
Problem ist das die Anzahl der Preise aus Tabelle 2 unterschiedlich sein können. Mal haben wir ein Preis, aber bei einigen auch 5 Preise.
Vielleicht kann mir einer helfen.
Danke im Voraus
Jenne
-
Es können aber auch 10 Preise oder mehr werden?
Ab V7R1 siehe hier:
http://newsolutions.de/forum-systemi...ht=with+concat
Ansonten gehts halt mit eingeschränkter Auswahl:
select Artikel
,coalesce(char(a.Preis), '')
concat coalesce(' - ' concat char(b.preis), '')
concat coalesce(' - ' concat char(c.preis), '')
from table1 x
left join table2 a on x.Artikel=a.Artikel
left join table2 b on x.Artikel=b.Artikel
Je nach Anzahl ist der Concat und Left Join zu erweitern.
Der "char(...)" sollte ggf. noch mit "trim(char(...))" ergänzt werden.
Dabei frage ich mich, wofür eine Denormalisierung gut sein soll.
-
 Zitat von Fuerchau
Es können aber auch 10 Preise oder mehr werden?
Ab V7R1 siehe hier
Rekursive Common Table Expressions sind bereits seit V5R4 möglich. Die hierarchische Query Anweisung (START WITH CONNECT BY) wurde dagegen erst mit Release 7.1 TR3 eingeführt.
Ansonsten kann man sich immer noch eine kleine User Defined Function (UDF) bauen, etwa so:
Code:
CREATE FUNCTION MySchema/MyUDF (
PARARTNR CHAR(5) )
RETURNS VARCHAR(1024)
LANGUAGE SQL
READS SQL DATA
BEGIN
DECLARE RETURNVAL VARCHAR ( 1024 ) NOT NULL DEFAULT ' ' ;
FOR CSRC1 AS C1 CURSOR
FOR SELECT Preis
FROM TABLE2
WHERE ARTNR = PARARTNR
DO SET RETURNVAL = RETURNVAL CONCAT ' ' CONCAT VarChar(CSRC1.Preis) ;
END FOR ;
RETURN LTRIM(RETURNVAL) ;
END ;
Der Aufruf kann wie folgt aussehen:
Code:
Select Distinct ArtNr, MyUDF(ArtNr)
From Table1;
Birgitta
Similar Threads
-
By mk in forum NEWSboard Programmierung
Antworten: 13
Letzter Beitrag: 13-07-12, 08:53
-
By Bobou in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 22-11-06, 08:26
-
By moskito in forum NEWSboard Programmierung
Antworten: 5
Letzter Beitrag: 30-08-06, 17:30
-
By steven_r in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 08-08-06, 09:34
-
By mikex01 in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 21-04-06, 16:11
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks