Heim >Backend-Entwicklung >Golang >Wie verwende ich LIKE-Abfragen mit parametrisierten Werten im pq-PostgreSQL-Treiber von Go ordnungsgemäß?
Go postgresql LIKE-Abfrage mit parametrisiertem Wert
In Go muss beim Arbeiten mit dem pq-Treiber für PostgreSQL auf die korrekte Formatierung geachtet werden von Abfragen mit LIKE-Klauseln. Ein häufiges Problem beim Versuch, den LIKE-Operator zu verwenden, ist ein Syntaxfehler, der auf ein ungültiges Zeichen am oder in der Nähe des Prozentzeichens („%“) hinweist.
Um dieses Problem zu beheben, muss das LIKE-Muster in Single eingeschlossen werden Anführungszeichen, wenn sie als Parameter übergeben werden. Dadurch wird sichergestellt, dass die Sonderzeichen von der PostgreSQL-Datenbank korrekt interpretiert werden. Die aktualisierte Abfrage unten enthält diese Korrektur:
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;`
In dieser Abfrage wird das LIKE-Muster in einfache Anführungszeichen gesetzt und mit dem Parameter $1 unter Verwendung von || verkettet Operator. Dadurch wird sichergestellt, dass die Datenbank das Muster als Zeichenfolge und nicht als Sonderzeichen interpretiert.
Mit dieser Änderung sollte die Abfrage in PostgreSQL erfolgreich ausgeführt werden. Es werden Produkte gefunden, deren Namen mit dem angegebenen Muster übereinstimmen, und die Ergebnisse werden in absteigender Reihenfolge ihrer Bewertung sortiert.
Das obige ist der detaillierte Inhalt vonWie verwende ich LIKE-Abfragen mit parametrisierten Werten im pq-PostgreSQL-Treiber von Go ordnungsgemäß?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!