💡
原文英文,约300词,阅读约需1分钟。
📝
内容提要
本文介绍了多种SQL查询,包括查找员工第二高薪资、当前日期、提取年份、获取两个表中的不同值、查找第十高薪资、获取最大GPA、创建新表及获取最后五条记录等。
🎯
关键要点
- SQL查询找出员工的第二高薪资:使用MAX函数和NOT IN子查询。
- 显示当前日期的SQL查询:使用GetDate()函数。
- 从日期中提取年份的SQL查询:使用YEAR函数。
- 获取test_a表中存在而test_b表中不存在的值的查询:使用EXCEPT和LEFT JOIN。
- 查找员工表中第十高薪资的SQL查询:使用DISTINCT和LIMIT。
- 获取最大GPA的SQL查询:使用相关子查询和DISTINCT。
- 创建新表并复制数据和结构的SQL查询:使用CREATE TABLE AS。
- 获取表中最后五条记录的SQL查询:使用子查询和ORDER BY。
- 获取EmployeeInfo表中50%记录的SQL查询:使用COUNT和WHERE条件。
❓
延伸问答
如何查找员工的第二高薪资?
使用MAX函数和NOT IN子查询:SELECT MAX(Salary) FROM Employee WHERE Salary NOT IN (SELECT MAX(Salary) FROM Employee);
如何显示当前日期的SQL查询?
使用GetDate()函数:SELECT GetDate();
如何从日期中提取年份?
使用YEAR函数:SELECT YEAR(GETDATE()) AS 'Year';
如何获取两个表中不同的值?
使用EXCEPT和LEFT JOIN:SELECT * FROM test_a EXCEPT SELECT * FROM test_b; 或者 SELECT a.id FROM test_a a LEFT JOIN test_b b ON a.id = b.id WHERE b.id IS NULL;
如何查找员工表中的第十高薪资?
使用DISTINCT和LIMIT:SELECT DISTINCT Salary FROM Employee ORDER BY Salary DESC LIMIT 9,1;
如何创建一个新表并复制数据和结构?
使用CREATE TABLE AS:CREATE TABLE NewTable AS SELECT * FROM EmployeeInfo;
➡️