Stmt.Query()
可変個引数パラメータがあります:
func (s *Stmt) Query(args ...interface{}) (*Rows, error)
これは、省略記号...
を使用できることを意味します 可変個引数パラメータの値としてスライス値を渡すには、そのスライスのタイプは[]interface{}
である必要があります。 例:
var args []interface{}
for _, v := range r.Form["type"] {
t, _ := strconv.Atoi(v)
args = append(args, t)
}
// ...
rows, err := stmt.Query(args...)
別の方法として、SQLクエリを事前に作成し、クエリ引数を渡さずに実行することもできます。たとえば、を参照してください。 PostgresのGoとIN句 。