【问题标题】:Parameter with pattern matching syntax in a PostgreSQL query [duplicate]PostgreSQL查询中具有模式匹配语法的参数[重复]
【发布时间】:2016-04-14 20:05:45
【问题描述】:

我正在编写一个查询 postgres 数据库的 golang 程序。我想使用 $1 来提供值并且应该有一个模式匹配

Db.Query("SELECT * FROM table where name like %$1%", user)

上面写着:

“%”处或附近的语法错误

【问题讨论】:

  • “一些错误”不足以定义错误。
  • 我确实喜欢这样来获得输出 Db.Query("SELECT * FROM table where name like $1", "%"+user+"%") 但没有更好更专业的方法做吧
  • 它在“%”处或附近显示语法错误 我确实喜欢这样来获取输出 Db.Query("SELECT * FROM table where name like $1","%"+user+"%") 但是没有更好更专业的方法吗
  • 您使用哪个包?给我们更多关于什么是用户的细节......就像这里所说的stackoverflow.com/questions/25214459/go-postgresql-like-query 尝试逃避你的like request like '%$1%'
  • 这能回答你的问题吗? Go postgresql LIKE query

标签: postgresql go pattern-matching parameterized-query


【解决方案1】:

你的语法错了,试试

user := "%"+user+"%"

rows, err := Db.Query("SELECT * FROM table where name like $1", user)

if err!=nil{
    fmt.Println(err)
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    • 2016-11-28
    • 1970-01-01
    相关资源
    最近更新 更多