右连接 right join 或 right outer join,数据链接到右边那张表中
#通过下面这两种方法就可以把不同的表连接到一起,变成一张大表
#左连接 left join 或 left outer join,数据连接到左边那张表中
select * from user left join job on user.id=job.user_id;
select * from user left outer join job on user.id=job.user_id;
#右连接 right join 或 right outer join,数据链接到右边那张表中
SELECT * from user RIGHT JOIN job on user
.id = job.user_id;
join 或 inner join内连接
#join 或 inner join内连接
select * from user join job on user
.id = job.user_id;
#相当于下面这条语句
SELECT * from user, job where user
.id = job.user_id;
交叉链接,cross join,没有where指定查询条件的子句的交叉联接将产生两表的笛卡尔积。
#交叉链接,cross join,没有where指定查询条件的子句的交叉联接将产生两表的笛卡尔积。
SELECT * from user CROSS join job;
常用函数:
distinct 排出重复的(后面只能有一个字段名) 语法:select distinct 字段名 from 表名;
#distinct去重
select DISTINCT age, name from user;
limit 分页查询
#查询第几条数据,表示从索引为0开始,查询4条记录
select * from user LIMIT 4;
#查询id为3~7数据,从索引为2开始,查询5条数据
SELECT * from user LIMIT 2,5;
count获取表数据行数 , select count(*) from 表名;
SELECT COUNT(*) from user;
group by 分组 按字段分组(在表名和where后面)
SELECT * from user GROUP BY age;
order by 排序查询 语法:select * from 表名 where 条件 order by 字段名 asc/desc, 字段名1 asc/desc;
asc表示升序(默认) desc表示降序 where可以不要
#默认asc排序
SELECT * from user ORDER BY age;
UPPER(string) 可以将字符转成大写 语法:select upper(字段名) from 表名;
lower(string) 将字符转成小写
#将字符转为大写
SELECT UPPER(job) from user;
#将字符转为小写
SELECT LOWER(job) from user;
like 模糊查询 语法:select * from 表名 where 字段名 like ‘%M%’;
_:只能通配当前位置的一个字符
%:可以通配任意多个字符
%%:匹配所有的内容
SELECT * from user
where name like ‘%张%’;
not like 用法和like一样(作用相反),不包含的
SELECT * from user
where name not LIKE ‘%张%’;
in 范围查询 语法:select * from 表名 where 字段名 in(数据值1, 数据值2…);
SELECT * from user
where age in(18, 20);
and 或 && 并且
or 或 || 或
not 或 ! 非(取反)
is null; 为空
is not null; 不为空
between and 范围查找 语法:select * from 表名 where 字段名 between 值1 and 值2;
regexp 正则表达式 语法:select * from 表名 where 字段名 regexp 'S ′ ; S '; S ′; S表示最后一个字母为S的
= > >= < <= <> != <=> 操作符
<>, != 不等于操作符,
<=> 和=作用一样,可以用于和null比较
create table 新表 select * from 旧表; 复制表结构及数据
creata table 新表 select * from 旧表 where 1 = 2; 只复制表结构到新表
create table 新表 like 旧表; 只复制表结构到新表
concat(string1,String2) 拼接字符串 语法:select concar(字段1,字段2)/(字段1,‘字符串’) from 表名;
substr(string,start,length) 截取字符串。
start开始截取位置,length截取长度
insert(str, x, y, insert); 将字符串str的x位置开始,y个字符替换为字符串insert
LENGTH(string) 计算字符的长度。
replace(string,‘要替换的字符’,‘替换的字符’) 对指定内容进行替换
round(number,[index])按指定位置对数字进行四舍五入运算
Index为正:表示小数点右边的位置
Index为负:表示小数点左边的位置
left(str, x) right(str, x) 分别返回最左/右边的x个字符, 如果第二个参数为null则返回为null
lpad(str, n, pad), rpad(str, n, pad); 用字符串pad对str最左边和最右边进行填充,直到长度为n个字符长度.
trim(str) ltrim(str) rtrim(str) 去掉字符串两边/左边/右边字符的空格
strcmp(s1, s2) 如果s1比s2小,返回-1,大,返回1,等于返回0 字符串,ASCII比较
运算符:
+ - * / 运算,一般用在计算年薪。
#salary月工资*12,其他运算同理
select name, salary*12 from user;
max() 计算最大值
min() 计算最小值
sum() 计算总和
avg() 计算平均值
#查询年龄最大的
先自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以扫码领取!
复习的面试资料
这些面试全部出自大厂面试真题和面试合集当中,小编已经为大家整理完毕(PDF版)
- 第一部分:Java基础-中级-高级
- 第二部分:开源框架(SSM:Spring+SpringMVC+MyBatis)
- 第三部分:性能调优(JVM+MySQL+Tomcat)
- 第四部分:分布式(限流:ZK+Nginx;缓存:Redis+MongoDB+Memcached;通讯:MQ+kafka)
- 第五部分:微服务(SpringBoot+SpringCloud+Dubbo)
- 第六部分:其他:并发编程+设计模式+数据结构与算法+网络
进阶学习笔记pdf
- Java架构进阶之架构筑基篇(Java基础+并发编程+JVM+MySQL+Tomcat+网络+数据结构与算法)
- Java架构进阶之开源框架篇(设计模式+Spring+SpringMVC+MyBatis)
- Java架构进阶之分布式架构篇 (限流(ZK/Nginx)+缓存(Redis/MongoDB/Memcached)+通讯(MQ/kafka))
- Java架构进阶之微服务架构篇(RPC+SpringBoot+SpringCloud+Dubbo+K8s)
535196)]
- Java架构进阶之分布式架构篇 (限流(ZK/Nginx)+缓存(Redis/MongoDB/Memcached)+通讯(MQ/kafka))
[外链图片转存中…(img-BUpuUxtZ-1711460535196)]
[外链图片转存中…(img-Iy4OPvZs-1711460535196)]
[外链图片转存中…(img-hgHlaUxp-1711460535197)]
- Java架构进阶之微服务架构篇(RPC+SpringBoot+SpringCloud+Dubbo+K8s)
[外链图片转存中…(img-aroOTx74-1711460535197)]
[外链图片转存中…(img-KmXymtY6-1711460535197)]
需要更多Java资料的小伙伴可以帮忙点赞+关注,点击传送门,即可免费领取!