lachesis: MYSQL: Abfrageproblem

Hallo zusammen,

ich hab ein (für euch hoffentlich) kleines Problem.

Eine Tabelle meiner Datenbank sieht so aus

id vorname nachname ehem_name

Momentan lautet meine Abfrage zB:

SELECT id,vorname,nachname,ehem_name
FROM user
WHERE nachname LIKE S%
ORDER BY nachname

Das funktioniert auch alles soweit ganz gut.

Jetzt hat ein User gefragt ob ich nicht auch die ehemaligen Namen in die Liste mit aufnehmen könnte.

Es soll also auch Lieschen Müller, das jetzt Schmitt heißt aufgeführt werden. Könnt ihr mir einen Tipp geben wie das geht?

Danke

Gruß lach

--
mal wieder auf http://www.booklinks.de vorbeigeschaut? Mittlerweile mehr als 900! Bücher.
  1. Hallo,

    Es soll also auch Lieschen Müller, das jetzt Schmitt heißt aufgeführt werden. Könnt ihr mir einen Tipp geben wie das geht?

    SELECT *
    FROM user
    WHERE nachname LIKE S% OR ehem_name LIKE S%
    ORDER BY nachname

    Shockdoc1

    --
    www.LiHo-Gaming.de Onlinegaming since 2oo2
    1. Hi & danke

      SELECT *
      FROM user
      WHERE nachname LIKE S% OR ehem_name LIKE S%
      ORDER BY nachname

      das hab ich ja auch hingekriegt, aber so sortiert er ja nicht korrekt, denn Lieschen Mueller steht ja dann am Anfang der Liste.

      Sieht so aus, als müsse ich das array nachher noch mit php sortieren oder?

      Grüßle

      --
      mal wieder auf http://www.booklinks.de vorbeigeschaut? Mittlerweile mehr als 900! Bücher.
      1. hi,

        das hab ich ja auch hingekriegt, aber so sortiert er ja nicht korrekt, denn Lieschen Mueller steht ja dann am Anfang der Liste.

        Lieschen Mueller heisst jetzt aber Lieschen Schmitt, also sollte sie auch zwischen R und T stehen, oder?

        gruss,
        wahsaga

        1. Ganz genau,

          vielleicht wars falsch beschrieben,

          wenn ich die Abfrage dann für M mache soll sie aber für Müller korrekt einsortiert werden und nicht die letzte Position für _S_chmitt kriegen.

          Geht das überhaupt per sql?

          THX

          --
          mal wieder auf http://www.booklinks.de vorbeigeschaut? Mittlerweile mehr als 900! Bücher.
          1. Hallo,

            ORDER BY nachname kannst du machen... Weiss aber ehrlich gesagt nicht genau was du meinst...

            Shockdoc1

            --
            www.LiHo-Gaming.de Onlinegaming since 2oo2
            1. Hi

              OK

              ich hab ne Abfrage nach dem Anfangsbuchstaben des Nachnamens (jetzt M)

              Mann
              Mass
              Marder
              Monn
              Myte
              Schmitt (Müller)

              ist das Ergebnis der Abfrage mit ORDER BY 'nachname'

              Was ich gerne hätte ist

              Mann
              Mass
              Marder
              Monn
              Schmitt (Müller)
              Myte

              Ist das so verständlicher?  Danke für eure Geduld und Hilfe

              --
              mal wieder auf http://www.booklinks.de vorbeigeschaut? Mittlerweile mehr als 900! Bücher.
              1. hi,

                ich hab ne Abfrage nach dem Anfangsbuchstaben des Nachnamens (jetzt M)
                Monn
                Myte
                Schmitt (Müller)
                ist das Ergebnis der Abfrage mit ORDER BY 'nachname'

                Was ich gerne hätte ist
                Monn
                Schmitt (Müller)
                Myte

                das wird sich mit mysql-mitteln nur schwerlich machen lassen, wenn überhaupt.
                packe alle werte aus dem abfrageergebnis in deinem php-script in ein array, und sortiere dieses nach deinen vorstellungen.

                gruss,
                wahsaga

                1. das wird sich mit mysql-mitteln nur schwerlich machen lassen, wenn überhaupt.
                  packe alle werte aus dem abfrageergebnis in deinem php-script in ein array, und sortiere dieses nach deinen vorstellungen.

                  *seufz*  Das habe ich schon befürchtet

                  Nun ja dann ich werd ich das wohl so machen müssen.

                  Danke an alle!

                  --
                  mal wieder auf http://www.booklinks.de vorbeigeschaut? Mittlerweile mehr als 900! Bücher.
              2. yo,

                wende die funktion IF(ausdruck, mach1, mach2) für die spalte an und vergib einen alias namen, nach dem du sortierst.

                SELECT if (alter_name IS NULL, nachname, alter_name) AS namen
                FROM Tabelle
                ORDER BY namen;

                Ilja

          2. Hello,

            Dann musst Du mit einem (oder zwei) bedingten Feldern arbeiten und z.B. über die Contatinierung der beiden sortieren.

            Liebe Grüße aus http://www.braunschweig.de

            Tom

            --
            Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
            1. Hi,

              Dann musst Du mit einem (oder zwei) bedingten Feldern arbeiten und z.B. über die Contatinierung der beiden sortieren.

              dasklingt gut!  Bloß hab ich keinen Schimmer von was Du redest... *seufz*
               Was ist denn zB Contatinierung ? Google kennt das Wort gar nicht...

              THX

              --
              mal wieder auf http://www.booklinks.de vorbeigeschaut? Mittlerweile mehr als 900! Bücher.