24 lines
407 B
Go
24 lines
407 B
Go
package sqlite
|
|
|
|
import "fmt"
|
|
|
|
func inFilter[T any](column string, paramIndex int, items []T) (string, []any, int) {
|
|
args := make([]any, 0, len(items))
|
|
filter := fmt.Sprintf("%s in (", column)
|
|
|
|
for idx, item := range items {
|
|
if idx != 0 {
|
|
filter += ","
|
|
}
|
|
|
|
filter += fmt.Sprintf("$%d", paramIndex)
|
|
paramIndex++
|
|
|
|
args = append(args, item)
|
|
}
|
|
|
|
filter += ")"
|
|
|
|
return filter, args, paramIndex
|
|
}
|