我需要将信息(布尔值)从“详细信息”表复制到“用户”表,与“反对网站”值一样:
表格结构: “用户”表:
id name appear
1 John null
2 Matt null
3 jack null
4 sara null
5 sarah null
“详情”表:
id user_id appaer
1 1 false
2 2 false
3 3 true
4 4 true
5 5 true
结果“用户”表应该是这样的;
id name appear
1 John true
2 Matt true
3 jack false
4 sara false
5 sarah false
怎么做?
感谢,
答案 0 :(得分:1)
更新会在true
然后false
时显示在用户表格中,并将这两个表格加入user_id
update user
set appear=(select case when details.appear='true' then 'false'
when details.appear='false' then 'true' end
from details join user
on details.user_id=users.id)
答案 1 :(得分:0)
您需要使用join and case-when
update
user u join details d on d.user_id = u.id
set u.appear = case when d.appaer = 'true' then 'false' else 'true' end ;
答案 2 :(得分:0)