Platzhalter für ... where ($variable IN ('...'))-Abfrage

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

  • Platzhalter für ... where ($variable IN ('...'))-Abfrage

    Hallo,

    ich habe eine Datenbankabfrage mit .....
    ....where ($tabelle1.region IN ('Ausdruck1', 'Audruck2', 'Ausdruck3')) ....

    ('Ausdruck1', 'Audruck2', 'Ausdruck3') ist einen Zeichenkette und das Ergebnis einer vorherigen DB-Abfrage, resultierend aus einem Array. Jetzt kann es sein dass das Array und somit die Zeichenkette leer ist, so daß gilt:

    ....where ($tabelle1.region IN ( )) ....

    dies würde keine Anfrageergebnisse ergeben, wie kann ich nun erreichen dass ich mit dieser Abfrageform dasselbe Ergebnis erziele wie mit ...where ($tabelle1.region like '%%%'), in etwa wie ....where ($tabelle1.region IN (%)) ....?

  • #2
    mir fehlt da die mysql erfahrung, aber kannste nicht einfach vor der mysql anfrage
    PHP-Code:
    if (!count($anweisungen)) $anweisungen[]="%"
    setzen ?

    cu, Campus
    meine Projekte bestaunen: http://www.kleiza.de

    Kommentar


    • #3
      dann würde ja

      ....where ($tabelle1.region IN ('%')) ....

      stehen und das dürfte nicht gehen, ich bin mir nicht sicher ob es für so einen Abfrage überhaupt einen platzhalter gibt,

      Kommentar


      • #4
        hmm, dann halt die ganze where clause mit php bearbeiten.

        PHP-Code:
        if (!count($anweisungen)) $query="$tabelle1.region like '%'";
        else 
        $query="$tabelle1.region  in ('".implode("','",$anweisungen)."')"
        oder so ähnlich... guck mal..
        Zuletzt geändert von Campus; 05.09.2002, 21:54.
        meine Projekte bestaunen: http://www.kleiza.de

        Kommentar


        • #5
          ja so in die Richtung habe ich auch schon gedacht, komfortabler wäre es gewesen es gebe so ein Schlüsselvariable wie $ auch für diesen mysql-ausdruck, aber ich denke ich werde diesen if-Weg gehen.

          Danke dir

          Kommentar

          Lädt...
          X