为了账号安全,请及时绑定邮箱和手机立即绑定

Go和SQL参数

Go和SQL参数

Go
jeck猫 2021-05-19 17:14:32
我对SQL查询的参数有问题。在这种情况下,我从ORDER BY查询中得到了意外的结果。我在OSX上运行PostgreSQL [1],然后转到v1.0.3。我有一个包含两列的表:name varchar,gophers int插入的行是:(“ Alice”,2)和(“ Bob”,1)如果我这样运行查询:rows, err := db.Query("SELECT name FROM foo ORDER BY gophers")我得到了想要的内容(“鲍勃”,“爱丽丝”)但是,如果我像这样运行它,则rows, err = db.Query("SELECT name FROM foo ORDER BY $1", "gophers")可以通过插入顺序(“爱丽丝”,“鲍勃”)来获得它们为什么?完整代码:http://paste2.org/p/2537881[1] https://github.com/bmizerany/pq
查看完整描述

1 回答

?
梦里花落0921

TA贡献1772条经验 获得超6个赞

我根本不知道这是一个问题。在psql中我做了


PREPARE  test (text) AS SELECT name FROM foo  ORDER BY $1;

EXECUTE test('a');

我得到了


 name  

 -------

 alice

 bob

 (2 rows)

我想知道您是否可以按$ 1进行订单。我用Google搜索了一下,但是找不到有用的东西。我知道这不是答案,但在我看来这可能是问题所在。我希望我能找到一些关于ORDER BY是否支持参数的信息


查看完整回答
反对 回复 2021-05-24
  • 1 回答
  • 0 关注
  • 233 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信