SQL题解 | #浙江大学用户题目回答情况#
浙江大学用户题目回答情况
https://www.nowcoder.com/practice/55f3d94c3f4d47b69833b335867c06c1
select practice.device_id, practice.question_id, practice.result from question_practice_detail as practice inner join user_profile as user on practice.device_id = user.device_id where user.university='浙江大学' order by practice.question_id asc
1.连接查询
内连接,只会连接左右id都存在的条目。
from A inner join B on A.id=B.id
左连接,会保留左侧表(A)的所有数据。若A表的某个id值,在B表中并不存在,那么将会在B表中对于id之外的字段填充null
from A left join B on A.id=B.id
右连接,会保留右侧表(B)的所有数据。若B表的某个id值,在A表中并不存在,那么将会在A表中对于id之外的字段填充null
from A right join B on A.id=B.id
2.关于字段别名
若任何表中的字段都不重复,那么其实没有必要设置别名。
若任意表中有两个以上的表有重名字段,那么推荐给表重命名,并且后续的 on、where、having、order by、select 操作都建议采用 重命名后的表名.对应字段
来进行取值