我正在使用Go和PostgreSQL(pq驱动程序),我有以下查询
SELECT p.id, p.name, p.description, p.price, p.image, p.rate
FROM products AS p
WHERE LOWER(p.name) LIKE %$1% ORDER BY p.rate DESC
Run Code Online (Sandbox Code Playgroud)
如果我直接在PostgreSQL中执行此查询,它可以工作,但在Golang中说:
pq: syntax error at or near "%"
Run Code Online (Sandbox Code Playgroud)
我该如何解决?我试过"\%"但没有用.谢谢.
这是完整的源代码
func FindByName(name *string) ([]*Product, error) {
db, err := db.StablishConnection()
if err != nil {
log.Fatal(err)
panic(err)
}
defer db.Close()
query := `SELECT p.id, p.name, p.description, p.price, p.image, p.rate
FROM products AS p
WHERE LOWER(p.name) LIKE %$1% ORDER BY p.rate DESC`
product_rows, err := db.Query(query, name)
if err != nil …Run Code Online (Sandbox Code Playgroud)