如何理解SQL中的自连接?
点击关注上方“SQL数据库开发”,
设为“置顶或星标”,第一时间送达干货
SQL专栏
![](https://filescdn.proginn.com/1c9d61ee5ee14cfdefa40dc961323110/e03888ca8051d8044f1d1899b201920d.webp)
SELECT
s1.Sname AS Sname1,
s2.Sname AS Sname2
FROM Student s2,Student s1
![](https://filescdn.proginn.com/5b66e90de60994a20dd8e233529a0e70/2457a635556332382eec9dc6861803bb.webp)
![](https://filescdn.proginn.com/5f48063426e3cd95351b87e0e2a2db28/b6321964988ac3ce4949d75999e74bfc.webp)
SELECT
s1.Sname AS Sname1,
s2.Sname AS Sname2
FROM Student s2,Student s1
WHERE s1.Sname=s2.Sname
![](https://filescdn.proginn.com/a2bc635ab2cd78153cf07e3c3b32c1ed/bf0a6ca6ba1bf9ad15511975b2976d64.webp)
SELECT
s1.Sname AS Sname1,
s2.Sname AS Sname2
FROM Student s2,Student s1
WHERE s1.Sname<>s2.Sname
![](https://filescdn.proginn.com/5ea2162fde0f72718358cdb960823ae8/9ca18b898e5c1dae0ea60822a3feabfb.webp)
SELECT
s1.Sname AS Sname1,
s2.Sname AS Sname2
FROM Student s2,Student s1
WHERE s1.Sname>s2.Sname
![](https://filescdn.proginn.com/d46822f7d25a4489d04753470ff2dbcb/da31806bac96ed0ccfae10c248dacaf8.webp)
![](https://filescdn.proginn.com/40aa338b7b272daed6ee77698824b231/d5b043debd55716cdbf02f6b83801398.webp)
SELECT
IDENTITY(INT) ID,
Sname,
Score
INTO Student_Tmp
FROM Student
![](https://filescdn.proginn.com/f664bef606988968fa0b5563d7e6989a/3192ba65b8834dd88be50c418f0602a7.webp)
DELETE FROM Student_Tmp
WHERE Student_Tmp.ID< (
SELECT Max(s2.ID)
FROM Student_Tmp s2
WHERE Student_Tmp.Sname=s2.Sname
AND Student_Tmp.Score=s2.Score
);
SELECT DISTINCT * INTO Student_Tmp FROM Student
TRUNCATE TABLE Student
INSERT INTO Student SELECT * FROM Student_Tmp
DROP TABLE Student_Tmp
推荐阅读
悟空无姓无名的时候,阎王生死簿是怎么写的呢? 5号发工资和25号发工资,还能看出公司是否靠谱?🤫 如果把14亿中国人都拉到一个微信群。。。 四款可视化工具,解决99%的可视化大屏需求 假如面试中大家都说实话....
后台回复关键字:1024,获取一份精心整理的技术干货
后台回复关键字:进群,带你进入高手如云的交流群
评论