我对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是否支持参数的信息
- 1 回答
- 0 关注
- 233 浏览
添加回答
举报
0/150
提交
取消