ホームページ > バックエンド開発 > Golang > Go の pq PostgreSQL ドライバーでパラメーター化された値を持つ LIKE クエリを適切に使用する方法は?

Go の pq PostgreSQL ドライバーでパラメーター化された値を持つ LIKE クエリを適切に使用する方法は?

Barbara Streisand
リリース: 2024-12-07 11:45:16
オリジナル
572 人が閲覧しました

How to Properly Use LIKE Queries with Parameterized Values in Go's pq PostgreSQL Driver?

Go postgresql LIKE Query with Parameterized Value

Go では、PostgreSQL の pq ドライバーを使用する場合、正しい形式であることを確認する必要があります。 LIKE 句を含むクエリの数。 LIKE 演算子を使用しようとするときに発生する一般的な問題は、パーセント記号 (「%」) またはその近くに無効な文字があることを示す構文エラーです。

この問題を解決するには、LIKE パターンを単一の文字列で囲む必要があります。パラメータとして渡される場合は引用符で囲みます。これにより、特殊文字が PostgreSQL データベースによって正しく解釈されるようになります。以下の更新されたクエリには、この修正が含まれています。

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;`
ログイン後にコピー

このクエリでは、LIKE パターンが一重引用符で囲まれ、|| を使用して $1 パラメータと連結されています。オペレーター。これにより、データベースはパターンを特殊文字としてではなく文字列として解釈するようになります。

この変更により、クエリは PostgreSQL で正常に実行されるはずです。名前が指定されたパターンに一致する製品を検索し、結果を評価の降順に並べます。

以上がGo の pq PostgreSQL ドライバーでパラメーター化された値を持つ LIKE クエリを適切に使用する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート