登录
首页 >  Golang >  Go问答

使用 sqlx 执行非参数化查询的步骤

来源:stackoverflow

时间:2024-03-05 23:45:26 461浏览 收藏

今天golang学习网给大家带来了《使用 sqlx 执行非参数化查询的步骤》,其中涉及到的知识点包括等等,无论你是小白还是老手,都适合看一看哦~有好的建议也欢迎大家在评论留言,若是看完有所收获,也希望大家能多多点赞支持呀!一起加油学习~

问题内容

使用 sqlx 作为我的数据库适配器,我想根据用户提交的 post 数据对用户配置文件运行查询。有多个参数,例如 agesexlocation 等等。

例如,如果用户仅提交 age 值,则查询应如下所示:

var profiles []model.profile
q:= "select *  from profile where age = ?"
err = database.sql.select(&profiles, q, age)
if err != nil {
    log.println(err)
}

正如您所看到的,由于无法动态构建查询,因此该方法不够灵活,并且变得非常冗长,无法考虑所有可能的变化。

我想要的是根据输入数据构建查询,然后将原始查询提供给 sqlx。

像这样的伪代码:

q:= `SELECT *  FROM profile WHERE 
      age > 25   AND sex="f" AND location="London"`
    err = database.SQL.ExecRaw(&profiles, q)

如何在 sqlx 中实现此目的?

我已经查看了文档,但不知道如何执行此操作。


解决方案


如果你不想使用参数,就不要使用参数。 Select 不会阻止您在查询中添加文字。

以上就是《使用 sqlx 执行非参数化查询的步骤》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>