// 获取默认配置的数据库对象(配置名称为"default")
db := g.DB()
db.Union(
db.Model("user").Where("id", 1),
db.Model("user").Where("id", 2),
db.Model("user").WhereIn("id", g.Slice{1, 2, 3}),
).OrderDesc("id").All()
// (SELECT * FROM `user` WHERE `id`=1)
// UNION
// (SELECT * FROM `user` WHERE `id`=2)
// UNION
// (SELECT * FROM `user` WHERE `id` IN (1,2,3)
// ORDER BY `id` DESC) ORDER BY `id` DESC
2 Comments
阿峰
批量查询用这个可以吗, 框架有自带批量查询方法吗
kobe
record, _ := g.DB().Union(
g.DB().Model("article").Where("id", 64),
g.DB().Model("article").Where("id", 65),
).OrderDesc("id").All()
for _, v := range record {
fmt.Println(v)
}
使用这个union方法可以获得结果集,同时还会打印这个错误,显示sql语句有问题You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1,但是日志里面的sql运行又没有问题(SELECT * FROM `article` WHERE `id`=64) UNION (SELECT * FROM `article` WHERE `id`=65) ORDER BY `id` DESC,请问这个是现象是什么原因。