Go PostgreSQL LIKE-Abfrage
Beim Abfragen einer PostgreSQL-Datenbank mit dem Go pq-Treiber ist es wichtig zu verstehen, wie LIKE-Abfragen korrekt verarbeitet werden. Ein Problem, das auftreten kann, ist die Einbeziehung von Prozentzeichen (%) in das LIKE-Muster, was zu Syntaxfehlern in Go führen kann.
Die ursprüngliche Abfrage in der Frage lautet wie folgt:
query := `SELECT p.id, p.name, p.description, p.price, p.image, p.rate FROM products AS p WHERE LOWER(p.name) LIKE %% ORDER BY p.rate DESC`
Diese Abfrage schlägt jedoch aufgrund der Prozentzeichen mit dem Fehler „pq: Syntaxfehler bei oder nahe „%“ in Go fehl.“ Um dieses Problem zu beheben, ist es notwendig, das Like-Muster einzuschließen (%$1%) in einfachen Anführungszeichen:
query := `SELECT p.id, p.name, p.description, p.price, p.image, p.rate FROM products AS p WHERE LOWER(p.name) LIKE '%' || || '%' ORDER BY p.rate DESC`
Durch das Hinzufügen der einfachen Anführungszeichen wird PostgreSQL mitgeteilt, dass der Wert nach LIKE eine Zeichenfolge ist und als Suchmuster verwendet werden soll Doppelpipe-Operator (||) und einfache Anführungszeichen, die Abfrage wird vom pq-Treiber korrekt analysiert und die LIKE-Suche kann durchgeführt werden.
Das obige ist der detaillierte Inhalt vonWie verwende ich LIKE-Abfragen korrekt mit dem pq-Treiber von Go für PostgreSQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!