BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das OpenOffice Forum zu erhalten!
> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des OpenOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als OO-SUPPORTER gekennzeichnet. 🤗
Abfrage SQL Code
Abfrage SQL Code
Hallo,
Ich hab schon wieder eine Frage :
Ich benutze den SQL-Code zur Abfrage: WHERE ( LOWER ( "ID" ) LIKE LOWER ( :qID || '%' ) OR :qID IS NULL ),
dann wird alles gesucht was in meine Abfrage drin steht z.B. ich gebe " 1 " ein dann wird 1,10,11 und 101 gefunden.
Wen ich WHERE ( LOWER ( "ID" ) LIKE LOWER ( :qID ) OR :qID IS NULL ) benutze Wir wenn ich nichts eingebe auch nichts angezeigt und wenn ich 1 eingebe ,wird nur "1" gefunden.
Ich hätte gern ein Code der mir bei 1 nur 1 raussucht und wenn ich nichts angebe dann Alles anzeigt wird.
Vileicht kann mir jamand helfen.Danke
Ich hab schon wieder eine Frage :
Ich benutze den SQL-Code zur Abfrage: WHERE ( LOWER ( "ID" ) LIKE LOWER ( :qID || '%' ) OR :qID IS NULL ),
dann wird alles gesucht was in meine Abfrage drin steht z.B. ich gebe " 1 " ein dann wird 1,10,11 und 101 gefunden.
Wen ich WHERE ( LOWER ( "ID" ) LIKE LOWER ( :qID ) OR :qID IS NULL ) benutze Wir wenn ich nichts eingebe auch nichts angezeigt und wenn ich 1 eingebe ,wird nur "1" gefunden.
Ich hätte gern ein Code der mir bei 1 nur 1 raussucht und wenn ich nichts angebe dann Alles anzeigt wird.
Vileicht kann mir jamand helfen.Danke
Re: Abfrage SQL Code
Moin,
versuch malWobei das Filterfeld in der Tabelle Filter, so wie die ID in der Datentabelle eine Zahl vom Typ INTEGER sein sollte.
Gruß R
versuch mal
Code: Alles auswählen
WHERE "ID" = :qID OR :qID IS NULL
Gruß R
Windows 10: AOO, LO Linux Mint: AOO, LO
Re: Abfrage SQL Code
Hallo R.
das Filterfeld in der Tabelle Filter, so wie die ID in der Datentabelle ist vom Typ INTEGER.
mit deinem SQL Code sortiert er mir zwar wenn ich 3 eingebe auch nur die 3 raus, also nicht 13 und 33 , was gut ist aber wenn ich nichts eingebe gibt er auch nichts raus.
Es soll ja so sein das wenn ich nichts eingebe er alles rausgibt. so wie bei " LIKE LOWER ( :qUnter_ID || '%' " und wenn ich die 3 eingebe dann soll er nur 3 und nicht 13, 23, 33 usw. rausgeben also so wie bei " LIKE LOWER ( :qUnter_ID ) ".
Es geht dabei um Unterkategorien, da ist es nicht so gut wenn ich da kein wert eingebe und er mir nichts anzeigt, oder ich was eingebe und er mir die ID's von ähnlichen ID´s also 13, 23, 33 usw. mit anzeigt.
Gruß Moerser
das Filterfeld in der Tabelle Filter, so wie die ID in der Datentabelle ist vom Typ INTEGER.
mit deinem SQL Code sortiert er mir zwar wenn ich 3 eingebe auch nur die 3 raus, also nicht 13 und 33 , was gut ist aber wenn ich nichts eingebe gibt er auch nichts raus.
Es soll ja so sein das wenn ich nichts eingebe er alles rausgibt. so wie bei " LIKE LOWER ( :qUnter_ID || '%' " und wenn ich die 3 eingebe dann soll er nur 3 und nicht 13, 23, 33 usw. rausgeben also so wie bei " LIKE LOWER ( :qUnter_ID ) ".
Es geht dabei um Unterkategorien, da ist es nicht so gut wenn ich da kein wert eingebe und er mir nichts anzeigt, oder ich was eingebe und er mir die ID's von ähnlichen ID´s also 13, 23, 33 usw. mit anzeigt.
Gruß Moerser
Re: Abfrage SQL Code
Also,
bei mir funktioniert es, der Fehler liegt bei dir woanders...
Gruß R
bei mir funktioniert es, der Fehler liegt bei dir woanders...
Gruß R
- Dateianhänge
-
- Test_ID_Filter_Moerser.odb
- (70.33 KiB) 207-mal heruntergeladen
Windows 10: AOO, LO Linux Mint: AOO, LO
Re: Abfrage SQL Code
Hallo R.
Das Problem ist das du nur die ID ab rufst.
Sobald du das * für Spalten Namen ersetzt oder zwei Parameter abfragen möchtest geht die Abfrage leider bei mir nicht.
Gruß Christian
Das Problem ist das du nur die ID ab rufst.
Sobald du das * für Spalten Namen ersetzt oder zwei Parameter abfragen möchtest geht die Abfrage leider bei mir nicht.
Gruß Christian
Re: Abfrage SQL Code
Moin,
Mal grundsätzlich, halbschwanger geht nicht, entweder sucht man mit einem Parameter Teile oder das Ganze des Suchbegriffs.
Man kann natürlich ein zweites Suchfeld, mit einem zweiten Prameter anlegen, den man dann "genau treffen" muss.
EDIT: Beispiel entfernt, habe zwei ähnliche Beträge in unterschiedlichen Foren verwechselt
Gruß R
Das hast Du nicht gefragt.
Mal grundsätzlich, halbschwanger geht nicht, entweder sucht man mit einem Parameter Teile oder das Ganze des Suchbegriffs.
Man kann natürlich ein zweites Suchfeld, mit einem zweiten Prameter anlegen, den man dann "genau treffen" muss.
EDIT: Beispiel entfernt, habe zwei ähnliche Beträge in unterschiedlichen Foren verwechselt
Gruß R
Windows 10: AOO, LO Linux Mint: AOO, LO
Re: Abfrage SQL Code
Moerser,
versuche mal diese Abfrage:Gruß R
versuche mal diese Abfrage:
Code: Alles auswählen
SELECT "ID", "Artikel", "Anzahl", "Name", "Produktionsdatum", "LagerortID", "Haupt_ID", "Beschreibung", "LagerPlatzID", "Unter_ID", "PersonID" FROM "Tabelle" WHERE ( LOWER ( "Name" ) LIKE LOWER ( :qName || '%' ) OR :qName IS NULL ) AND ( "LagerortID" = :qLagerortID OR :qLagerortID IS NULL ) AND ( "Haupt_ID" = :qHaupt_ID OR :qHaupt_ID IS NULL ) AND ( "LagerPlatzID" = :qLagerPlatzID OR :qLagerPlatzID IS NULL ) AND ( "Unter_ID" = :qUnter_ID OR :qUnter_ID IS NULL ) AND ( "PersonID" = :qPersonID OR :qPersonID IS NULL )
Windows 10: AOO, LO Linux Mint: AOO, LO
Re: Abfrage SQL Code
Hat Irrgendwie nicht funktioniert.
Ich hab jetzt aber gelöst :
Ich habe :
SELECT "ID", "Artikel", "Anzahl", "Name", "Produktionsdatum", "LagerortID", "Haupt_ID", "LagerPlatzID", "Unter_ID", "Beschreibung", "PersonID" FROM "Tabelle" WHERE ( LOWER ( "Name" ) LIKE LOWER ( :qName || '%' ) OR :qName IS NULL ) AND ( LOWER ( "LagerortID" ) LIKE LOWER ( :qLagerortID || '%' ) OR :qLagerortID IS NULL ) AND ( LOWER ( "Haupt_ID" ) LIKE LOWER ( :qHaupt_ID ) OR :qHaupt_ID IS NULL ) AND ( LOWER ( "LagerPlatzID" ) LIKE LOWER ( :qLagerPlatzID || '%' ) OR :qLagerPlatzID IS NULL ) AND ( LOWER ( "Unter_ID" ) LIKE LOWER ( :qUnter_ID ) OR :qUnter_ID IS NULL )
benutzt.
Wobei ich bei Hauptkategorie und Unterkategorie bei LIKE LOWER das " || '%' " weggelassen habe. dann funktioniert es.
Danke für dein Brainstormimg.
Gruß Moerser01
Ich hab jetzt aber gelöst :
Ich habe :
SELECT "ID", "Artikel", "Anzahl", "Name", "Produktionsdatum", "LagerortID", "Haupt_ID", "LagerPlatzID", "Unter_ID", "Beschreibung", "PersonID" FROM "Tabelle" WHERE ( LOWER ( "Name" ) LIKE LOWER ( :qName || '%' ) OR :qName IS NULL ) AND ( LOWER ( "LagerortID" ) LIKE LOWER ( :qLagerortID || '%' ) OR :qLagerortID IS NULL ) AND ( LOWER ( "Haupt_ID" ) LIKE LOWER ( :qHaupt_ID ) OR :qHaupt_ID IS NULL ) AND ( LOWER ( "LagerPlatzID" ) LIKE LOWER ( :qLagerPlatzID || '%' ) OR :qLagerPlatzID IS NULL ) AND ( LOWER ( "Unter_ID" ) LIKE LOWER ( :qUnter_ID ) OR :qUnter_ID IS NULL )
benutzt.
Wobei ich bei Hauptkategorie und Unterkategorie bei LIKE LOWER das " || '%' " weggelassen habe. dann funktioniert es.
Danke für dein Brainstormimg.
Gruß Moerser01