php操作mysql数据库,求高手翻译解析这段sql语句,有几点问题
updateuser1ajoin(selectb.user_namefromuser1ainnerjoinuser2bona.user_name=b.user_name)...
update user1 a join(
select b.user_name
from user1 a inner join user2 b
on a.user_name = b.user_name
)b on a.user_name = b.user_name
一:那个单独的join是什么意思呢?我知道有几种连接方式,但是这个单独的join是什么意思呢?查了资料,不太懂.
二: user1 是表,为什么update user1 还要跟着一个a ,这个a有什么意思和作用呢?这样写规范合理吗? 谢谢 展开
select b.user_name
from user1 a inner join user2 b
on a.user_name = b.user_name
)b on a.user_name = b.user_name
一:那个单独的join是什么意思呢?我知道有几种连接方式,但是这个单独的join是什么意思呢?查了资料,不太懂.
二: user1 是表,为什么update user1 还要跟着一个a ,这个a有什么意思和作用呢?这样写规范合理吗? 谢谢 展开
1个回答
展开全部
一、join等同于inner join,inner是可以省略的;
二、a表示别名,符合sql规范,写a的意思就是后面可以少敲点代码,更关键的时,有时连接的2个表是同一个表,这里就必须用到别名,例如
update user1 a, user1 b
set a.name=b.name where a.sex=b.sex
二、a表示别名,符合sql规范,写a的意思就是后面可以少敲点代码,更关键的时,有时连接的2个表是同一个表,这里就必须用到别名,例如
update user1 a, user1 b
set a.name=b.name where a.sex=b.sex
更多追问追答
追问
最后一句的sql语句?同一张表?这是什么情况下会用?有点鸡肋的感觉
追答
最常见情况,更新或删除重复记录
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询