如何使用golang mongodb驱动程序查询查找?
我尝试这个:
db.Collection("products").Find(nil, bson.M{}, &options.FindOptions{Sort: "-price"})
但是我得到了这个错误:
无法将类型字符串转换为BSON文档:WriteString只能在位于Element或Value上但位于TopLevel上时写入
我不知道要传递给Sort变量什么,因为它是一个接口{}。
答案 0 :(得分:0)
尝试以下代码
findOptions := options.Find()
// Sort by `price` field descending
findOptions.SetSort(bson.D{{"price", -1}})
db.Collection("products").Find(nil, bson.D{}, findOptions)
答案 1 :(得分:0)
我无法将 cmd = "SELECT id, data->"$.val" FROM TestTable;"
mysql_cur.execute(cmd)
res = mysql_cur.fetchall()
mysql_cur.close()
# res has id and val. id is of type int, val is of type string for float value and type bool for boolean value
传递给选项(这导致错误)。
但是这段代码对我有用:
bson.D
答案 2 :(得分:0)
我在尝试解决相关问题时遇到了一些注意事项:
如果尝试按多个字段排序,请确保使用bson.D而不是 比bson.M好,因为bson.M不保留顺序。
如果尝试以编程方式构建多个排序字段,请尝试
将bson.E附加到bson.D
就像dassum一样,按照
的建议,将bson.M {}传递给空过滤器
mongo documentation
已应用:
function myFunction() {
var file = DriveApp.getFilesByName('Dummy.docx');
if (!file.hasNext()) return;
var document = Drive.Files.copy({}, file.next().getId(), {convert: true});
var doc = DocumentApp.openById(document.id);
}