sql面试题分享

SQL相关的问题通常涵盖基本查询、连接、聚合、子查询、窗口函数、数据修改以及数据库设计等方面。以下是一些常见的面试问题和示例:

基本查询:

SELECT column1, column2 FROM table_name;

#条件查询

where

SELECT * FROM table_name WHERE condition;

#排序结果:

SELECT * FROM table_name ORDER BY column1 ASC, column2 DESC;

#内连接

SELECT a.column, b.column

FROM table_a a

JOIN table_b b ON a.id = b.a_id;

#左连接

SELECT a.column, b.column

FROM table_a a

LEFT JOIN table_b b ON a.id = b.a_id;

#自连接(例如,查找同一表中具有相同值的记录)

SELECT a.column, b.column

FROM table a, table b

WHERE a.column = b.column AND a.id != b.id;

#计数、求和、平均值等

SELECT COUNT(), SUM(column1), AVG(column2)
FROM table_name
GROUP BY column3;
#使用HAVING子句过滤分组
SELECT column1, COUNT(
)

FROM table_name

GROUP BY column1

HAVING COUNT() > 1;
#子查询
SELECT column1
FROM table_name
WHERE column2 IN (SELECT column2 FROM another_table WHERE condition);
#插入数据
INSERT INTO table_name (column1, column2) VALUES (value1, value2);
#更新数据
UPDATE table_name SET column1 = value1 WHERE condition;
#删除数据
DELETE FROM table_name WHERE condition;
#查询重复的数据
SELECT column1, COUNT(
)

FROM table_name

GROUP BY column1

HAVING COUNT(*) > 1;

#删除重复记录

DELETE FROM table_name

WHERE id NOT IN (

SELECT MIN(id)

FROM table_name

GROUP BY column1

);

#查询第二高

SELECT DISTINCT salary

FROM employee

ORDER BY salary DESC

LIMIT 1 OFFSET 1;

相关推荐
codigger1 小时前
线上数据库连接池打满:从应急止损到架构根治的完整方案
数据库·sql·程序员
倔强的石头_2 小时前
集中式与分布式怎么选?我把手头11套系统重新过了一遍秤
数据库
挖掘狂人2 小时前
线上数据库连接池打满:从应急止损到架构根治的完整方案
数据库·sql·程序员
Rainmicro2 小时前
【无标题】
java·数据库·算法
Thanks_ks2 小时前
MySQL 的索引是什么?用图书馆的目录讲明白
数据库·sql·mysql·索引·联合索引·explain·慢查询优化
CoderYanger8 小时前
Java EE 进阶:8.MyBatis 操作数据库(入门)(第二弹)
java·数据库·spring boot·spring·面试·java-ee·mybatis
wafrdggh11 小时前
2026电商快递批量查询怎么用?固乔助手模板设置评测
大数据·数据库·小程序
一个天蝎座 白勺 程序猿11 小时前
KingbaseES数据库归档重做日志文件管理:从配置到运维的实战指南
运维·数据库·oracle·kingbasees·金仓数据库
龙腾AI白云15 小时前
仿真到现实(Sim-to-Real)迁移:跨越仿真与现实鸿沟
数据库·机器学习·plotly·知识图谱·tornado
freejackman17 小时前
【实战二】字段级血缘追踪:拆解 AST 迷局,精准穿透函数链与子查询
大数据·数据库·sql