[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Zitat Zitat von bettina_martin Beitrag anzeigen
    nein nein nein, so is es nicht:

    Pro Kunde soll es einen Satz geben mit Kundennr. und Name + 3 Felder Tel.nr + 3 Felder Email.

    Es kann sein das der Kunde nur eine Tel.nr hat und keine Email. Dann hat der Satz die Tel.nr 1 befüllt, Telnr. 2 und 3 müssen initial bleiben (blank). Alle 3 Email-Felder müssen auch leer sein.

    D.h. der Aufbau vom Satz ist immer gleich. ABer je nach Anzahl der Tel.nr und Email-Adr. stehen in diesen Felder Inhalte oder nicht.
    asooo, da bin ich wohl vom schlimmsten ausgegangen ... dann ists einfacher

  2. #2
    Registriert seit
    Nov 2003
    Beiträge
    2.422
    Vielleicht so? (Angaben ohne Gewähr!)
    PHP-Code:
    CREATE VIEW V AS (                                           

    SELECT NRNAMEVALUE(TEL1,  '') AS TEL1,                   
                     
    VALUE(TEL2,  '') AS TEL2,                   
                     
    VALUE(TEL3,  '') AS TEL3,                   
                     
    VALUE(EMAIL1,'') AS EMAIL1,                 
                     
    VALUE(EMAIL2,'') AS EMAIL2,                 
                     
    VALUE(EMAIL3,'') AS EMAIL3 FROM (           

    SELECT A.NRA.NAME,                                

          (
    SELECT MIN(TEL)   FROM B WHERE B.NR=A.NR)   AS TEL1,  
          (
    SELECT MIN(TEL)   FROM B WHERE B.NR=A.NR    AND       
      
    TEL>(SELECT MIN(TEL)   FROM B WHERE B.NR=A.NR))  AS TEL2,  
          (
    SELECT MIN(TEL)   FROM B WHERE B.NR=A.NR    AND       
      
    TEL>(SELECT MIN(TEL)   FROM B WHERE B.NR=A.NR    AND       
      
    TEL>(SELECT MIN(TEL)   FROM B WHERE B.NR=A.NR))) AS TEL3,  

          (
    SELECT MIN(EMAILFROM C WHERE C.NR=A.NR)   AS EMAIL1,
          (
    SELECT MIN(EMAILFROM C WHERE C.NR=A.NR    AND       
    EMAIL>(SELECT MIN(EMAILFROM C WHERE C.NR=A.NR))  AS EMAIL2,
          (
    SELECT MIN(EMAILFROM C WHERE C.NR=A.NR    AND      
    EMAIL>(SELECT MIN(EMAILFROM C WHERE C.NR=A.NR    AND      
    EMAIL>(SELECT MIN(EMAILFROM C WHERE C.NR=A.NR))) AS EMAIL3

                                               FROM A
    ) AS X

  3. #3
    Registriert seit
    Nov 2003
    Beiträge
    2.422

Similar Threads

  1. CREATE VIEW
    By Franz Karl in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 20-01-07, 09:04
  2. create view oder constraint oder trigger oder ... ?
    By antvik in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 02-08-06, 19:04
  3. problem mit eigener sql function
    By Stefan_Sk in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 26-05-06, 17:37
  4. SQL Problem
    By Lucky4712 in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 24-05-06, 16:57
  5. SQL -> CREATE VIEW
    By Kaufmann in forum IBM i Hauptforum
    Antworten: 17
    Letzter Beitrag: 11-05-06, 15:57

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •