我有两个更新查询,我想从中制作一个,但我无法弄清楚如何?我已经在Stack Overflow上查看了其他一些示例,但我无法让它工作。
你能帮助我吗?
查询1:
更新
exercise_list
SETex1
=ex2
,ex2
=ex3
,ex4
= NULL WHEREday_ID
= 1 ANDuser_ID
= 4
查询2:
更新
training_results
SETex1
=ex2
,ex2
=ex3
,ex4
= NULL WHEREday_ID
= 1 ANDuser_ID
= 4
更新: 感谢所有的发型!我已经接受了第一个芒果
答案 0 :(得分:1)
有两种方法可以实现这一目标:
使用单个mySqlQuery调用,只需按以下方式调用mySqlQuery函数:
mySqlQuery(UPDATE exercise_list SET ex1= ex2, ex2= ex3,ex4 = NULL WHERE
day_ID= 1 AND user_ID= 4;
UPDATE training_results SET ex1= ex2, ex2= ex3,ex4 = NULL WHERE
day_ID= 1 AND user_ID= 4;)
方法2:
UPDATE exercise_list e_l ,training_results t_r SET
e_l.ex1=e_l.ex2, e_l.ex2=e_l.ex3,e_l.ex4=NULL,
t_r.ex1=t_r.ex2, t_r.ex2=t_r.ex3,t_r.ex4=NULL
WHERE e_l.day_ID = 1 AND e_l.user_ID = 4 AND
t_r.day_ID = 1 AND t_r.user_ID = 4;
希望它有所帮助。
答案 1 :(得分:0)
可以是两个表的内连接
UPDATE exercise_list as a
INNER JOIN training_results as b ON (a.day_ID = b.day_ID AND a.user_ID = b.user_ID )
SET ex1= ex2,
ex2= ex3,
ex4 = NULL
WHERE a.user_ID=4
AND a.day_ID = 1
答案 2 :(得分:0)
UPDATE A
SET A.ex1 = A.ex2
, B.ex1 = B.ex2
, A.ex2 = A.ex3
, B.ex2 = B.ex3
, A.ex4 = NULL
, B.ex4 = NULL
FROM exercise_list A
JOIN training results B on A.ID = B.ID
WHERE A.day_id = 1 and A.user_id = 4
答案 3 :(得分:0)
可能这个:
UPDATE exercise_list as el, training_results as tr SET
el.ex1=el.ex2,el.ex2=el.ex3, el.ex4=NULL, tr.ex1=tr.ex2, tr.ex2=tr.ex3, tr.ex4=NULL
WHERE el.day_ID = 1 AND el.user_ID = 4 AND tr.day_ID = 1 AND tr.user_ID = 4;