我目前正在使用GO MySQL,我有一个案例,其中sql包含许多类似的参数。
stmt, err := db.Prepare(`
SELECT id
FROM questions
WHERE description like '%?%'
UNION
SELECT id
FROM books
WHERE description like '%?%'
UNION
SELECT id
FROM sites
WHERE description like '%?%'`)
param := "golang"
stmt.Query(param, param, param)
我的真实生活sql有大约10个类似的golang
参数和第二个参数,它重复几次。位置参数是构造sql的唯一方法吗?
答案 0 :(得分:0)
您可以使用点差运算符:
args := make([]string, 0)
for i := 0; i < 10; i++ {
args = append(args, "param")
}
q.Query(args...)
更多行代码,但至少你不必一直按Ctrl + C / Ctrl + V。