我需要使用2個數組更改數據庫中的行,第一個存儲我需要更改的行的名稱,第二個存儲val。我已經添加了代碼,以了解我想做什么。我可以用1個請求到我的DB來做到這一點嗎?func update_1(){ key := []string{"Name1", "Name2", "Name4"} val := []string{"1", "2", "4"} for i, _ := range key{ _, err := db.Exec("UPDATE table SET val = $1 WHERE name = $2",val[i], key[i]) if err != nil { errorLog.Println(err) return } }}
1 回答

拉風的咖菲貓
TA貢獻1995條經驗 獲得超2個贊
您可以將數組作為參數傳遞到 Postgres 查詢中。然后它是一個簡單的和:unnest()update
update t
set val = u.val
from unnest(:ar_names, :ar_vals) u(name, val)
where t.name = u.name;
- 1 回答
- 0 關注
- 136 瀏覽
添加回答
舉報
0/150
提交
取消