【发布时间】:2016-08-17 10:43:40
【问题描述】:
我是 golang 新手,使用 Jmoiron Sqlx 包查询 Postgres 数据库(选择查询)。我正在做的方式是创建一个 sql 字符串并调用 Select(dest interface{}, query string,args) 方法。虽然效果很好,但问题是我正在动态生成我的 sql 字符串,因此每个响应的目标结构应该不同。
例如:- 一个查询可以是
Select a,b,c,d from table A ;
另一个可以是
Select x,y,z from Table B;
据我了解,应该为 Select Method 定义两个不同的结构,即
Struct Resp1{
a string
b string
c string
d string
}
还有,
Struct Resp2{
x string
y string
z string
}
然后调用 select as db.Select(&resp1,query,args) 和 db.Select(&resp2,query,args)
我在想我是否可以定义一个通用的 Struct
say Resp3{
a string
b string
c string
d string
x string
y string
z string
}
并且根据我的选择查询仅填充匹配的列(即第一列仅 a、b、c、d 和第二个 x、y、z)。
我尝试搜索,但找不到任何线索。
【问题讨论】: