请教一条join连接查询的语句
有两个table
表A
id name value
1 a NULL
2 b NULL
3 c NULL
………..
表B
id name
1 a
2 b
我希望用join将两个表连接起来,如果表B里的name在表A存在的话,就将表A相对应的value改成1,不存在的话改成0
即得出的结果为
id name value
1 a 1
2 b 1
3 c 0
我之前都是导成文本做的,现在想直接在数据库操作,但对join不熟,请问sql语句应该怎么写?
-
SQL code
select A.id,A.name,if(B.id is null,0,B.id) from A left join B on A.id =B.id
update a left join b on a.id =b.id
set a.value=IF(b.id is null,0,1)
update可以同时多个表的。join道理是一致的。