Ankündigung

Einklappen
Keine Ankündigung bisher.

Filtertücke bei kombinierten SQL Abfragen beachten

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

  • Filtertücke bei kombinierten SQL Abfragen beachten

    Moin Tim,

    ich bin eben von einer Tücke bei der Angabe von SQL Filtern in den Wahnsinn getrieben worden und wollte hiermit kurz die Kollegen "warnen".

    Ich wollte einen generellen Vorfilter bauen, der einen Teil der Datensätze erst gar nicht zur Ausgabe bringt und habe dann am Lister-Element die folgende SQL-Bedingung hinterlegt:

    HTML-Code:
    expiry_date > UNIX_TIMESTAMP() OR expiry_date = 0
    Dieser Vorfilter funktioniert auch soweit und die Einträge mit Ablaufdatum werden nicht ausgegeben. Wenn ich jetzt nun aber weitere Filter, z.B. aus einem Filtermodul einsetzen, dann scheint es so, als würde das dann nicht mehr funktionieren, weil trotzdem alle Datensätze angezeigt werden ...

    Ursache ist, dass in der Abfrage oben die letzte Bedingung ein OR ist ... In Kombination mit weiteren Abfragen - die dann später an die Kette gehängt werden - wird das natürlich dann das gewünschte Ergebnis verfälschen.

    Lösung ist, die obige Abfrage in Klammern () zu setzen und dann ist alles gut. Logisch.

    Evtl. könntest Du die Beschreibung hier am Filter etwas umschreiben und darauf hinweisen, dass kombinierte Abfragen ggf. in Klammern zu setzen sind, damit sie für sich durchgeführt werden können?

    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: 2023-03-21 10_16_18-Meine Inhaltselemente Einstellungen des Filters ID_75 bearbeiten.png
Ansichten: 85
Größe: 8,4 KB
ID: 27238

  • #2
    https://forum.premium-contao-themes....-andere-filter
    http://www.premium-contao-themes.com

    Kommentar

    Lädt...
    X