tutorials.de Buch-Aktion 05/2012
Like Tree2Danke
  • 1 Beitrag von tombe
  • 1 Beitrag von tombe
ERLEDIGT
JA
ANTWORTEN
6
ZUGRIFFE
617
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    suchender01 suchender01 ist offline Rookie
    Registriert seit
    Dec 2011
    Ort
    Bretten (BaWü)
    Beiträge
    5
    hallo zusammen,

    ich brauche eure hilfe******

    ich brauche werte aus einer tabelle die in einer spalte abgelegt sind.

    Beispiel:

    sp1 | sp2
    1 | 'das ist'
    2 | 'ein test'

    nun benötige ich eine abfrage, die die werte aus sp2 in zwei abfragespalten anzeigt.

    asp1 | asp2
    das ist | ein test

    ich hoffe, ihr könnt damit etwas anfangen.

    vielen dank und gruß
    bernd
     

  2. #2
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Gehen tut es so, die Frage ist ob es auch schöner/besser geht:

    Code sql:
    1
    2
    3
    4
    
    SELECT DISTINCT
        (SELECT sp2 FROM deine_tabelle WHERE sp1 = 1) AS asp1,
        (SELECT sp2 FROM deine_tabelle WHERE sp1 = 2) AS asp2
    FROM deine_tabelle WHERE sp1 = 1 OR sp2 = 2
    Geändert von tombe (08.12.11 um 07:53 Uhr)
    suchender01 bedankt sich. 
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  3. #3
    suchender01 suchender01 ist offline Rookie
    Registriert seit
    Dec 2011
    Ort
    Bretten (BaWü)
    Beiträge
    5
    hallo tombe,

    erst einmal VIELEN DANK für deine antwort. bin heute nicht im büro und werde das morgen gleich testen.

    das ist für mich schon einmal ein stück weiter. es muss einfach nur gehen******!

    an einen verschachtelten select habe ich garnicht gedacht******!

    melde mich dann morgen!

    gruß bernd
     

  4. #4
    suchender01 suchender01 ist offline Rookie
    Registriert seit
    Dec 2011
    Ort
    Bretten (BaWü)
    Beiträge
    5
    hi tombe,

    VIELEN DANK für deinen tipp************************!!

    das funktioniert ganz prima******!

    gruß bernd
     

  5. #5
    suchender01 suchender01 ist offline Rookie
    Registriert seit
    Dec 2011
    Ort
    Bretten (BaWü)
    Beiträge
    5
    hallo zusammen,

    tombe hat mir schon sehr geholfen und nun stehe ich an dem nächsten problem, wo ich nicht weiter komme!

    habe das ganze etwas erweitern müssen.
    Beispiel Tabelle1:

    ROWID | ROWFD | ROWFDPOS | SCHLUESSEL | INHALT
    1 | 28 | 1 | 188 | Heute
    2 | 28 | 8 | 188 | und Morgen
    3 | 28 | 1 | 189 | Heute

    Beispiel Abfrage1:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    SELECT DISTINCT ROWFD, SCHLUESSEL,
                              (SELECT     INHALT
                                FROM          TABELLE1 AS TABELL1_1
                                WHERE      (ROWFD = 28) AND (ROWFDPOS = 1)) AS GD_001,
                              (SELECT     INHALT
                                FROM          TABELLE1 AS TABELLE_2
                                WHERE      (ROWFD = 28) AND (ROWFDPOS = 8)) AS GD_002
    FROM         TABELLE1
    WHERE     (SCHLUESSEL = 188)

    das funktioniert auch, solange ich nur einen [SCHLUESSEL] (hier 188) in der Tabelle habe.
    Habe ich aber mehrere [SCHLUESSEL], dann habe ich ein problem.

    Beispiel Ergebnis1:
    ROWFD | SCHLUESSEL | GD_001 | GD_002
    28 | 188 | Heute | und Morgen

    da meine ABFRAGE1 aber von einer übergeordneten abfrage "ABFRAGE2" aufgerufen wird, bekomme ich einen fehler. der filter auf die WHERE-Klausel sollte allgemein bleiben, da ich evtl. ALLE oder einzelne daten benötige.

    Beispiel Ergebnis2 (soll):
    ROWFD | SCHLUESSEL | GD_001 | GD_002
    28 | 188 | Heute | und Morgen
    28 | 189 | Heute | Null

    ich hoffe mal wieder auf eure HILFE******!

    gruß bernd
    Geändert von suchender01 (15.12.11 um 09:09 Uhr)
     

  6. #6
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Code sql:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    SELECT DISTINCT ROWFD, SCHLUESSEL,
    (
    SELECT DISTINCT INHALT
    FROM TABELLE1 AS TABELL1_1
    WHERE (ROWFD = 28) AND (ROWFDPOS = 1) AND SCHLUESSEL = TABELLE1.SCHLUESSEL) AS GD_001,
    (
    SELECT DISTINCT INHALT
    FROM TABELLE1 AS TABELLE_2
    WHERE (ROWFD = 28) AND (ROWFDPOS = 8) AND SCHLUESSEL = TABELLE1.SCHLUESSEL) AS GD_002
    FROM TABELLE1

    Bei einem kurzen Test habe ich damit das gewünschte Ergebnis bekommen.
    suchender01 bedankt sich. 
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  7. #7
    suchender01 suchender01 ist offline Rookie
    Registriert seit
    Dec 2011
    Ort
    Bretten (BaWü)
    Beiträge
    5
    hi tombe,

    DANKE!
     

Ähnliche Themen

  1. [Oracle 10g] Spalteninhalt löschen
    Von m3000 im Forum Relationale Datenbanksysteme
    Antworten: 4
    Letzter Beitrag: 18.08.10, 16:50
  2. Zwei Layer abwechselnd anzeigen
    Von altox-de im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 11.11.07, 19:57
  3. Zwei Layer abwechselnd anzeigen
    Von altox-de im Forum PHP
    Antworten: 0
    Letzter Beitrag: 11.11.07, 17:36
  4. Antworten: 6
    Letzter Beitrag: 19.08.07, 23:06
  5. Spalteninhalt als Arrayindex
    Von DerPhil im Forum PHP
    Antworten: 2
    Letzter Beitrag: 09.07.07, 12:41