当前位置:网站首页>面试、工作中常用sql大全(建议收藏备用)
面试、工作中常用sql大全(建议收藏备用)
2022-07-31 10:29:00 【半旧518】
前 言
作者简介:半旧518,长跑型选手,立志坚持写10年博客,专注于java后端
专栏简介:深入、全面、系统的介绍数据库的基础知识
文章简介:本文将深入全面介绍工作中最常用的sql基础语法知识,建议收藏备用,创作不易,敬请三连哦
大厂真题:大厂面试真题大全
1)建表
create table test
(
test_id int,
test_price decimal,
test_desc varchar(255)
);
也可以建立查询结果的子表。但是子表在可视化视图中是看不到的。
create table hehe
as
select * from emp;
2)排序
查询结果为默认升序,可以指定降序,ORDER BY子句可以有多个关键字(先排前)
SELECT * FROM emp ORDER BY empno DESC;
注意ORDER BY子句总放在SELECT子句的最后面。可以在查询中使用函数。
SELECT * FROM emp ORDER BY UPPER(ename);
3)过滤查询
SELECT DISTINCT ename FROM emp;
关键字UNIQUE与DISTINCT作用相同,但是UNIQUE为ORACLE特有语法,不易于移植。
4)where子句
select * from emp where sal between 2000 and 3000;
select * from emp where job in('SALESMAN','CLERK');
上面第2列代码指定字段job为’SALESMAN’,'CLERK’的职员。
SELECT
empno,
ename,
job,
sal,
TO_CHAR(hiredate, 'YY-MM-DD') as hiredate
from
emp
where
job='CLERK' and EXTRACT(MONTH FROM hiredate)=12;
5)Fetch子句
fetch子句可以返回限定条数的数据。下列代码放回工资最高的五个员工(如果最后一个名额并列则全部显示,把with ties换成only则不会拓展显示数据)。
--以下代码只有在Oracle12c以上的版本才可以执行
select
empno,
ename,
sal
from
emp
order by
sal desc
fetch next 5 rows with ties;
6)In子句
select
empno,
ename,
job,
sal
from
emp
where
job not in('CLERK')
order by
sal desc;
7)Between And子句
select
empno,
ename,
job,
hiredate
from
emp
where
hiredate between date '1980-01-01' and date '1981-01-01'
order by
empno;
8)like子句
like子句可以使用通配符匹配查询。下面查询姓名首字母为A的,至少有两个字母的员工,不区分大小写。
select
empno,
ename,
job
from
emp
where
upper(ename) like 'A_%'
ORDER BY
empno;
9)插入数据
INSERT INTO emp(empno,ename,job)
VALUES(8003,'sg','CLERK');
10)更新数据
UPDATE emp
SET ename='pp'
WHERE empno='8003';
11)删除数据
DELETE FROM emp
WHERE empno='8003';
12)返回指定行数数据
select * from emp where rownum<=5;
该语句在数据量特别大的数据库中很有用。
13)别名
select empno as id,ename as name from emp;
select
e.empno,e.ename,d.dname,e.deptno,d.deptno
from
emp e,dept d
where e.deptno=d.deptno;
14)连接
内连接两张表的全部内容都会显示,外连接分为左连接和右连接,左连接左表全部显示。
select
e.empno,e.ename,e.job,d.deptno,d.dname
from
emp e
inner join
dept d
on e.deptno=d.deptno;
15)Union和unionAll
合并多个select子句,其中unionAll允许重复值,而Union则不允许。
select deptno from emp
union all
select deptno from dept
order by deptno;
16)约束
常用primarary key,foreign key not null,check,default.
create table teacher(
tid VARCHAR(20) PRIMARY key,
tname varchar(30),
tsex VARCHAR(10)
);
alter table teacher
add constraint ck_teacher check(tsex='M' or tsex='W');
17)创建索引
create index index_emp
on emp(empno);
18)drop与truncate
drop index index_test;
truncate可以截断表中数据但是不删除表。
truncate table hehe;
19)函数
select avg(sal) from emp;
select count( distinct ename) from emp;
20)group by子句
使用聚合函数group by可以分组查询,比如查各部门员工的平均工资。
select deptno,avg(sal) as avg_sal from emp group by deptno;
21)having子句
使用having关键字是因为where子句与聚合函数无法同时使用。
select
deptno,avg(sal) as avg_sal
from
emp
group by deptno
having avg(sal)>1000;
“工欲善其事,必先利其器”。要想成为工作上的高手,面试时的题霸,独步江湖,就必须拿到一份"武林秘籍"。
我个人强推牛客网:找工作神器|大厂java面经汇总|超全笔试题库
推荐理由:
1.刷题题库,题目特别全面,刷爆笔试再也不担心
链接: 找工作神器|大厂java面经汇总|超全笔试题库
2.超全面试题、成体系、高质量,还有AI模拟面试黑科技
链接: 工作神器|大厂java面经汇总|超全笔试题库
3.超多面经,大厂面经很多
4.内推机会,大厂招聘特别多
链接: 找工作神器|大厂java面经汇总|超全笔试题库
5.大厂真题,直接拿到大厂真实题库,而且和许多大厂都有直接合作,题目通过率高有机会获得大厂内推资格。
链接: 找工作神器|大厂java面经汇总|超全笔试题库这篇文章就介绍到这里了。
“工欲善其事,必先利其器”。要想成为工作上的高手,面试时的题霸,独步江湖,就必须拿到一份"武林秘籍"。
我个人强推牛客网:找工作神器|大厂java面经汇总|超全笔试题库
推荐理由:
1.刷题题库,题目特别全面,刷爆笔试再也不担心
链接: 找工作神器|大厂java面经汇总|超全笔试题库
2.超全面试题、成体系、高质量,还有AI模拟面试黑科技
链接: 工作神器|大厂java面经汇总|超全笔试题库
3.超多面经,大厂面经很多
4.内推机会,大厂招聘特别多
链接: 找工作神器|大厂java面经汇总|超全笔试题库
5.大厂真题,直接拿到大厂真实题库,而且和许多大厂都有直接合作,题目通过率高有机会获得大厂内推资格。
链接: 找工作神器|大厂java面经汇总|超全笔试题库
边栏推荐
猜你喜欢
Mybaits 常用问题详解
(C language) program environment and preprocessing
SQLServer2019安装(Windows)
感情危机,朋友的网恋女友要和他闹分手,问我怎么办
darknet 源码阅读笔记-01-activation_kernels.cu
unity-shader-2
Android安全专题(三)JNI混淆
Open Kylin openKylin automation developer platform officially released
Hospital management system database, course design, SQLserver, pure code design
Build finished with errors/Executable Not Found
随机推荐
Build finished with errors/Executable Not Found
NowCoderTOP17-22 二分查找/排序——持续更新ing
DC-7-vulnhub
sql力扣刷题六
KVM虚拟化作业
Emotional crisis, my friend's online dating girlfriend wants to break up with him, ask me what to do
浅谈Attention与Self-Attention,一起感受注意力之美
odoo14 | 附件上传功能及实际使用
SQL如何从字符串截取指定字符(LEFT、MID、RIGHT三大函数)
1161. 最大层内元素和 (二叉树的层序遍历)
Gradle系列——Groovy概述,基础使用(基于Groovy文档4.0.4)day2-1
【LeetCode】203.移除链表元素
A Method for Ensuring Data Consistency of Multi-Party Subsystems
Mybaits Frequently Asked Questions Explained
What does "chmod 777-R filename" mean?
SQL study notes - REGEXP operator
In half a month, MySQL has been consolidated again, and a tens of thousands of words "super hard core" article has been sorted out!
Android安全专题(三)JNI混淆
Centos7 install mysql5.7
【LeetCode】36.有效的数独