>백엔드 개발 >Golang >Go의 pq PostgreSQL 드라이버에서 매개변수화된 값과 함께 LIKE 쿼리를 올바르게 사용하는 방법은 무엇입니까?

Go의 pq PostgreSQL 드라이버에서 매개변수화된 값과 함께 LIKE 쿼리를 올바르게 사용하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-07 11:45:16614검색

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

매개변수화된 값을 사용하여 Go postgresql LIKE 쿼리

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.