https://blog.csdn.net/github_26672553/article/details/100047058
之前我们把select * from users
硬生生的替换成了select * from (select * from user1 union select * from user2) as t
很low,但如果你的分表需求和业务是在过于简单,也是可以的。。。
func (this MyHandler) HandleQuery(query string) (*mysql.Result, error) {
res1, err := this.conn.Execute("select * from user1")
if err != nil {
return nil, fmt.Errorf("Error:", err)
}
res2, err := this.conn.Execute("select * from user2")
if err != nil {
return nil, fmt.Errorf("Error:", err)
}
res1.RowDatas = append(res1.RowDatas, res2.RowDatas...)
res1.AffectedRows += res2.AffectedRows
return res1, nil
}
以上代码就是数据集合
的方式,实现了select * from (select * from user1 union select * from user2) as t
查询同样的数据。