![cc426efc34d7445052f241890cbdc161.png](https://i-blog.csdnimg.cn/blog_migrate/e46dc039422c56bbb39b1c17ce684e2a.jpeg)
- 四种JOIN的区别解答: 站在主表的角度
INNER JOIN ,可省略INNER,如有匹配上的则只返回两者共有的。
LEFT JOIN, 无论右表的数据多少,左表全部返回。
RIGHT JOIN, 无论左表的数据多少,右表全部返回。
FULL JOIN, 将不同的数据全部合并在一起。
2. 三种排序函数
解答:都可以搭配分析函数Over(Partition by x order by y) 使用
从结果中可轻易察觉,Rownumber 就是按照顺序,从小到大,没有重复值。Rank也是按照顺序,从小到大,当出现重复值后,会跳跃+1,也称为跳跃函数。Dense_rank 也是按照顺序,从小到大,当出现重复值后,会Dense(愚笨的;迟钝的)加1。
SELECT ROW_NUMBER()OVER(PARTITION BY DEPTNO ORDER BY SAL) AS RNK,E.* FROM EMP_GAN E; 1,2,3,4
SELECT RANK()OVER(PARTITION BY DEPTNO ORDER BY SAL) AS RNK,E.* FROM EMP_GAN E; 1,2,2,4
SELECT DENSE_RANK()OVER(