MySQL 2 SELECT Abfragen zusammenfassen, aber wie?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • MySQL 2 SELECT Abfragen zusammenfassen, aber wie?

    Hallo zusammen!

    Aus der Tabelle "Adressen", sollen die Felder "Name", "Vorname"
    ausgegeben werden; zusätzlich die Felder "Strasse", "Ort", "PLZ" nur, wenn das Feld "zeigen" den Wert "Y" enthält.

    Die erste Abfrage alleine sieht ungefähr so aus:
    >
    SELECT vorname, name
    FROM adressen
    <

    ...und die zweite:
    >
    SELECT strasse, ort
    WHERE zeigen = 'Y'
    <

    Kann mir vielleicht jemand verraten, wie ich beide Abfragen zusammenfassen kann?
    Also, sowas wie (FALSCHES BEISPIEL!):
    >
    SELECT email, vorname, name
    FROM fussi
    AND
    SELECT strasse, ort
    WHERE zeigen = 'Y'
    ORDER BY nickname ASC
    <

    Vielen vielen Dank für jeden Tipp!!

    Steffen

  • #2
    SELECT vorname, name, strasse, ort FROM adressen

    Dann fragst du noch ab ob dein Feld zeigen den Wert 'Y' hat, wenn ja gib alles aus, sonst nur vorname und name
    Zuletzt geändert von XGremliN; 11.01.2007, 14:07.
    it's not a bug,
    it's a feature!

    Kommentar


    • #3
      Danke für die schnelle Antwort!
      Genau das ist allerdings mein Problem...
      Wie fass ich das denn zusammen?

      Original geschrieben von XGremliN
      SELECT vorname, name, strasse, ort FROM adressen

      Dann fragst du noch ab ob dein Feld zeigen den Wert 'Y' hat, wenn ja gib alles aus, sonst nur vorname und name

      Kommentar


      • #4
        Mach dir bitte zuerst klar, dass du mit einem SELECT keine Zeilen mit unterschiedlich vielen Spalten selektieren kannst.


        Und dann entscheide dich, ob du es wie von XGremliN vorgeschlagen machen willst - alle Werte selektieren, und erst bei der weiteren Verarbeitung (Ausgabe im Script o.ä.) bestimmte Spalteninhalte in Abhängigkeit vom Wert von zeigen nicht berücksichtigen;

        Oder ob du bereits SQL-seitig für diese Spalten entweder ihren Wert oder aber NULL, '' o.ä. selektieren willst. Dabei hilft bspw. IF(), siehe Manual.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Yep, "IF" ist das Mittel der Wahl! :-)

          Danke! :-)


          Original geschrieben von wahsaga
          Mach dir bitte zuerst klar, dass du mit einem SELECT keine Zeilen mit unterschiedlich vielen Spalten selektieren kannst.


          Und dann entscheide dich, ob du es wie von XGremliN vorgeschlagen machen willst - alle Werte selektieren, und erst bei der weiteren Verarbeitung (Ausgabe im Script o.ä.) bestimmte Spalteninhalte in Abhängigkeit vom Wert von zeigen nicht berücksichtigen;

          Oder ob du bereits SQL-seitig für diese Spalten entweder ihren Wert oder aber NULL, '' o.ä. selektieren willst. Dabei hilft bspw. IF(), siehe Manual.

          Kommentar


          • #6
            Fein - und dann gewöhne dir bitte für die Zukunft noch die TOFU-Postings ab :-)
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar

            Lädt...
            X