一线互联网大厂Java核心面试题库
正逢面试跳槽季,给大家整理了大厂问到的一些面试真题,由于文章长度限制,只给大家展示了部分题目,更多Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等已整理上传,感兴趣的朋友可以看看支持一波!
| sys |
±-------------------+
4 rows in set (0.00 sec)
/*> asjjfha
/*> hasjh
/*> */
SQL分类
-
DDL (Data Definition Language)数据定义语言,用来定义数据库对象:数据库,表,列;
-
DML (Data Manipulation Language)数据操作语言,用来对数据库中表的数据进行增删改;
-
DQL (Data Query Language)数据查询语言,用来查询数据库中表的记录(数据);
-
DCL (Data Control Language)数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户。
1. DDL (Data Definition Language)数据定义语言
DDL–查询库
1.查询
在命令行输入如下命令:
show databases;
2.创建
创建数据库
create database 数据库名称;
创建数据库(判断,如果不存在则创建)
create database if not exists 数据库名称;
3.删除
删除数据库:
drop database 数据库名称;
删除数据库(判断,如果存在则删除)
drop database if exists 数据库名称;
4.使用数据库
查看当前使用的数据库:
select database();
使用数据库:
use 数据库名称;
DDL–操作表
1. 查询表
查询当前数据库下所有表的名称
show tables;
查询表结构
desc 表名称;
2. 创建表
create table 表名(
字段名1 数据类型1,
字段名2 数据类型2,
…
字段名n 数据类型n
);
注意:最后一行末尾不加逗号。
样例展示:
mysql> create database db1
-> ;
Query OK, 1 row affected (0.00 sec)
mysql> use db1
Database changed
mysql>
mysql>
mysql> create table tb_user(
-> id int,
-> username varchar(20),
-> password varchar(32)
-> );
Query OK, 0 rows affected (0.04 sec)
mysql> show tables;
±--------------+
| Tables_in_db1 |
±--------------+
| tb_user |
±--------------+
1 row in set (0.00 sec)
mysql> desc tb_user
-> ;
±---------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±---------±------------±-----±----±--------±------+
| id | int(11) | YES | | NULL | |
| username | varchar(20) | YES | | NULL | |
| password | varchar(32) | YES | | NULL | |
±---------±------------±-----±----±--------±------+
3 rows in set (0.01 sec)
mysql>
数据类型:数值,日期,字符串
3. 删除表
删除表:
drop table 表名称;
删除表(判断,如果存在则删除)
drop table if exists 表名称;
测试样例输出:
mysql> show databases
-> ;
±-------------------+
| Database |
±-------------------+
| information_schema |
| db1 |
| mysql |
| performance_schema |
| sys |
±-------------------+
5 rows in set (0.01 sec)
mysql> use db1; – 使用数据库
Database changed
mysql> select database(); – 查看当前使用的数据库
±-----------+
| database() |
±-----------+
| db1 |
±-----------+
1 row in set (0.00 sec)
mysql> show tables;-- 查询当前数据库下所有表的名称
±--------------+
| Tables_in_db1 |
±--------------+
| tb_user |
±--------------+
1 row in set (0.00 sec)
mysql> desc tb_user;-- 查询表结构
±---------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±---------±------------±-----±----±--------±------+
| id | int(11) | YES | | NULL | |
| username | varchar(20) | YES | | NULL | |
| password | varchar(32) | YES | | NULL | |
±---------±------------±-----±----±--------±------+
3 rows in set (0.01 sec)
mysql> drop tb_user;-- 删除表
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘tb_user’ at line 1
mysql> drop table tb_user;
Query OK, 0 rows affected (0.03 sec)
mysql> show tables;
Empty set (0.00 sec)
4. 修改表
1.修改表名
alter table 表名 rename to 新的表名;
测试样例:
mysql> show tables;
±--------------+
| Tables_in_db1 |
±--------------+
| hello |
±--------------+
1 row in set (0.01 sec)
mysql> desc hello;
±---------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±---------±------------±-----±----±--------±------+
| id | int(11) | YES | | NULL | |
| username | varchar(20) | YES | | NULL | |
| pass | int(11) | YES | | NULL | |
±---------±------------±-----±----±--------±------+
3 rows in set (0.01 sec)
mysql> alter table hello rename to user;\
Query OK, 0 rows affected (0.02 sec)
mysql> show tables;
±--------------+
| Tables_in_db1 |
±--------------+
| user |
±--------------+
1 row in set (0.00 sec)
2.添加一列:
alter table 表名 add 列名 数据类型;
测试样例:
mysql> alter table user add sex int;
Query OK, 0 rows affected (0.04 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc user;
±---------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±---------±------------±-----±----±--------±------+
| id | int(11) | YES | | NULL | |
| username | varchar(20) | YES | | NULL | |
| pass | int(11) | YES | | NULL | |
| sex | int(11) | YES | | NULL | |
±---------±------------±-----±----±--------±------+
4 rows in set (0.01 sec)
3.修改数据类型:
alter table 表名 modify 列名 新数据类型;
测试样例:
mysql> alter table user modify sex varchar(10);
Query OK, 0 rows affected (0.05 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc user;
±---------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±---------±------------±-----±----±--------±------+
| id | int(11) | YES | | NULL | |
| username | varchar(20) | YES | | NULL | |
| pass | int(11) | YES | | NULL | |
| sex | varchar(10) | YES | | NULL | |
±---------±------------±-----±----±--------±------+
4 rows in set (0.00 sec)
4.修改列名和数据类型
alter table 表名 change 列名 新列名 新数据类型;
测试样例:
mysql> desc hello;
±---------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±---------±------------±-----±----±--------±------+
| id | int(11) | YES | | NULL | |
| username | varchar(20) | YES | | NULL | |
| password | varchar(32) | YES | | NULL | |
±---------±------------±-----±----±--------±------+
3 rows in set (0.00 sec)
mysql> alter table hello change password pass int;
Query OK, 0 rows affected (0.05 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc hello;
±---------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±---------±------------±-----±----±--------±------+
| id | int(11) | YES | | NULL | |
| username | varchar(20) | YES | | NULL | |
| pass | int(11) | YES | | NULL | |
±---------±------------±-----±----±--------±------+
3 rows in set (0.00 sec)
5.修改字符集
– 标准语法
alter table 表名 character set 字符集名称;
– 查看数据库中数据表字符集
show table status from 数据库名 like ‘数据表名’;
6.删除列
alter table 表名 drop 列名;
测试样例:
mysql> alter table hello drop sex;
Query OK, 0 rows affected (0.04 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc hello;
±---------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±---------±------------±-----±----±--------±------+
| id | int(11) | YES | | NULL | |
| username | varchar(20) | YES | | NULL | |
| password | varchar(32) | YES | | NULL | |
±---------±------------±-----±----±--------±------+
3 rows in set (0.00 sec)
2. DML (Data Manipulation Language)数据操作语言
添加数据
新增格式1:给指定列添加数据
– 标准语法
INSERT INTO 表名(列名1,列名2,…) VALUES (值1,值2,…);
– 查看表中所有数据
SELECT * FROM 表名;
测试样例:
mysql> insert into user(id,username) values(1,‘zhangsan’);
Query OK, 1 row affected (0.01 sec)
mysql> select * from user;
±-----±---------±-----±-----+
| id | username | pass | sex |
±-----±---------±-----±-----+
| 1 | zhangsan | NULL | NULL |
±-----±---------±-----±-----+
1 row in set (0.01 sec)
新增格式2:默认给全部列添加数据
– 标准语法
INSERT INTO 表名 VALUES (值1,值2,值3,…);
– 查看表中所有数据
SELECT * FROM 表名;
测试样例:
mysql> insert into user values(4,‘xiaoyan’,6666,‘female’);
Query OK, 1 row affected (0.01 sec)
mysql> select * from user;
±-----±---------±-----±-------+
| id | username | pass | sex |
±-----±---------±-----±-------+
| 1 | zhangsan | NULL | NULL |
| 2 | lisi | 1234 | male |
| 3 | wangwu | 1234 | female |
| 4 | xiaoyan | 6666 | female |
±-----±---------±-----±-------+
4 rows in set (0.00 sec)
新增格式3:批量添加数据
– 默认添加所有列数据 标准语法
INSERT INTO 表名 VALUES (值1,值2,值3,…),(值1,值2,值3,…),(值1,值2,值3,…);
– 查看表中所有数据
SELECT * FROM 表名;
– 给指定列添加数据 标准语法
INSERT INTO 表名(列名1,列名2,…) VALUES (值1,值2,…),(值1,值2,…),(值1,值2,…);
– 查看表中所有数据
SELECT * FROM 表名;
测试样例:
mysql> insert into user(id,username,pass,sex) values(2,‘lisi’,1234,‘male’),(3,‘wangwu’,1234,‘female’);
Query OK, 2 rows affected (0.01 sec)
Records: 2 Duplicates: 0 Warnings: 0
mysql> select * from user;
±-----±---------±-----±-------+
| id | username | pass | sex |
±-----±---------±-----±-------+
| 1 | zhangsan | NULL | NULL |
| 2 | lisi | 1234 | male |
| 3 | wangwu | 1234 | female |
±-----±---------±-----±-------+
3 rows in set (0.00 sec)
mysql> insert into user values(4,‘xiaoyan’,6666,‘female’),(4,‘xiaoyan’,6666,‘female’),(4,‘xiaoyan’,6666,‘female’);
Query OK, 3 rows affected (0.04 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> select * from user;
±-----±---------±-----±-------+
| id | username | pass | sex |
±-----±---------±-----±-------+
| 1 | zhangsan | NULL | NULL |
| 2 | lisi | 1234 | male |
| 3 | wangwu | 1234 | female |
| 4 | xiaoyan | 6666 | female |
| 4 | xiaoyan | 6666 | female |
| 4 | xiaoyan | 6666 | female |
| 4 | xiaoyan | 6666 | female |
±-----±---------±-----±-------+
7 rows in set (0.00 sec)
-
注意事项
-
列名和值的数量以及数据类型要对应
-
除了数字类型,其他数据类型的数据都需要加引号(单引双引都可以,推荐单引)
修改数据
– 标准语法
UPDATE 表名 SET 列名1 = 值1,列名2 = 值2,… [where 条件];
– 查看所有数据
SELECT * FROM 表名;
测试样例:
mysql> update user set id=6,pass=8888 where username=‘xiaoyan’;
Query OK, 4 rows affected (0.02 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> select * from user;
±-----±---------±-----±-------+
| id | username | pass | sex |
±-----±---------±-----±-------+
| 1 | zhangsan | NULL | NULL |
| 2 | lisi | 1234 | male |
| 3 | wangwu | 1234 | female |
| 6 | xiaoyan | 8888 | female |
| 6 | xiaoyan | 8888 | female |
| 6 | xiaoyan | 8888 | female |
| 6 | xiaoyan | 8888 | female |
±-----±---------±-----±-------+
7 rows in set (0.00 sec)
-
注意事项
-
修改语句中必须加条件
-
如果不加条件,则将所有数据都修改
删除数据
– 标准语法
DELETE FROM 表名 [WHERE 条件];
– 查看所有商品信息
SELECT * FROM product;
测试样例:
mysql> delete from user where id = 6;
Query OK, 4 rows affected (0.00 sec)
mysql> select * from user;
±-----±---------±-----±-------+
| id | username | pass | sex |
±-----±---------±-----±-------+
| 1 | zhangsan | NULL | NULL |
| 2 | lisi | 1234 | male |
| 3 | wangwu | 1234 | female |
±-----±---------±-----±-------+
3 rows in set (0.00 sec)
mysql> delete from user;
Query OK, 3 rows affected (0.00 sec)
mysql> select * from user;
Empty set (0.00 sec)
-
注意事项
-
删除语句中必须加条件
-
如果不加条件,则将所有数据删除
3. DQL (Data Query Language)数据查询语言
数据准备
– 创建db1数据库
CREATE DATABASE db1;
– 使用db1数据库
USE db1;
– 创建数据表
CREATE TABLE product(
id INT, – 商品编号
NAME VARCHAR(20), – 商品名称
price DOUBLE, – 商品价格
brand VARCHAR(10), – 商品品牌
stock INT, – 商品库存
insert_time DATE – 添加时间
);
– 添加数据
INSERT INTO product VALUES (1,‘华为手机’,3999,‘华为’,23,‘2088-03-10’),
(2,‘小米手机’,2999,‘小米’,30,‘2088-05-15’),
(3,‘苹果手机’,5999,‘苹果’,18,‘2088-08-20’),
(4,‘华为电脑’,6999,‘华为’,14,‘2088-06-16’),
(5,‘小米电脑’,4999,‘小米’,26,‘2088-07-08’),
(6,‘苹果电脑’,8999,‘苹果’,15,‘2088-10-25’),
(7,‘联想电脑’,7999,‘联想’,NULL,‘2088-11-11’);
测试输出:
mysql> show tables;
±--------------+
| Tables_in_db1 |
±--------------+
| product |
±--------------+
1 row in set (0.00 sec)
mysql> select * from product;
±-----±-------------±------±-------±------±------------+
| id | NAME | price | brand | stock | insert_time |
±-----±-------------±------±-------±------±------------+
| 1 | 华为手机 | 3999 | 华为 | 23 | 2088-03-10 |
| 2 | 小米手机 | 2999 | 小米 | 30 | 2088-05-15 |
| 3 | 苹果手机 | 5999 | 苹果 | 18 | 2088-08-20 |
| 4 | 华为电脑 | 6999 | 华为 | 14 | 2088-06-16 |
| 5 | 小米电脑 | 4999 | 小米 | 26 | 2088-07-08 |
| 6 | 苹果电脑 | 8999 | 苹果 | 15 | 2088-10-25 |
| 7 | 联想电脑 | 7999 | 联想 | NULL | 2088-11-11 |
±-----±-------------±------±-------±------±------------+
7 rows in set (0.00 sec)
查询语法
select
字段列表
from
表名列表
where
条件列表
group by
分组字段
having
分组之后的条件
order by
排序
limit
分页限定
查询全部
– 标准语法
SELECT * FROM 表名;
– 查询product表所有数据
– 查询所以列的数据,列名的列表可以使用*代替
SELECT * FROM product;
查询部分
多个字段查询
– 标准语法
SELECT 列名1,列名2,… FROM 表名;
– 查询名称、价格、品牌
SELECT NAME,price,brand FROM product;
测试样例:
mysql> select NAME,price,brand from product;
±-------------±------±-------+
| NAME | price | brand |
±-------------±------±-------+
| 华为手机 | 3999 | 华为 |
| 小米手机 | 2999 | 小米 |
| 苹果手机 | 5999 | 苹果 |
| 华为电脑 | 6999 | 华为 |
| 小米电脑 | 4999 | 小米 |
| 苹果电脑 | 8999 | 苹果 |
| 联想电脑 | 7999 | 联想 |
±-------------±------±-------+
7 rows in set (0.00 sec)
去除重复查询
- 注意:只有全部重复的才可以去除
– 标准语法
SELECT DISTINCT 列名1,列名2,… FROM 表名;
– 查询品牌
SELECT brand FROM product;
– 查询品牌,去除重复
SELECT DISTINCT brand FROM product;
测试样例:
mysql> select brand from product;
±-------+
| brand |
±-------+
| 华为 |
| 小米 |
| 苹果 |
| 华为 |
| 小米 |
| 苹果 |
| 联想 |
±-------+
7 rows in set (0.00 sec)
mysql> select distinct brand from product;
±-------+
| brand |
±-------+
| 华为 |
| 小米 |
| 苹果 |
| 联想 |
±-------+
4 rows in set (0.00 sec)
计算列的值(四则运算)
– 标准语法
SELECT 列名1 运算符(+ - * /) 列名2 FROM 表名;
/*
计算列的值
标准语法:
SELECT 列名1 运算符(+ - * /) 列名2 FROM 表名;
如果某一列为null,可以进行替换
ifnull(表达式1,表达式2)
表达式1:想替换的列
表达式2:想替换的值
*/
– 查询商品名称和库存,库存数量在原有基础上加10
SELECT NAME,stock+10 FROM product;
– 查询商品名称和库存,库存数量在原有基础上加10。进行null值判断
SELECT NAME,IFNULL(stock,0)+10 FROM product;
起别名
– 标准语法
SELECT 列名1,列名2,… AS 别名 FROM 表名;
– 查询商品名称和库存,库存数量在原有基础上加10。进行null值判断。起别名为getSum
SELECT NAME,IFNULL(stock,0)+10 AS getsum FROM product;
SELECT NAME,IFNULL(stock,0)+10 getsum FROM product;
测试样例:
mysql> select NAME,stock from product;
±-------------±------+
| NAME | stock |
±-------------±------+
| 华为手机 | 23 |
| 小米手机 | 30 |
| 苹果手机 | 18 |
| 华为电脑 | 14 |
| 小米电脑 | 26 |
| 苹果电脑 | 15 |
| 联想电脑 | NULL |
±-------------±------+
7 rows in set (0.00 sec)
mysql> SELECT NAME,stock+10 FROM product;
±-------------±---------+
| NAME | stock+10 |
±-------------±---------+
| 华为手机 | 33 |
| 小米手机 | 40 |
| 苹果手机 | 28 |
| 华为电脑 | 24 |
| 小米电脑 | 36 |
| 苹果电脑 | 25 |
| 联想电脑 | NULL |
±-------------±---------+
7 rows in set (0.00 sec)
mysql> select NAME,IFNULL(stock,0)+10 getsum from product;
±-------------±-------+
| NAME | getsum |
±-------------±-------+
| 华为手机 | 33 |
| 小米手机 | 40 |
| 苹果手机 | 28 |
| 华为电脑 | 24 |
| 小米电脑 | 36 |
| 苹果电脑 | 25 |
| 联想电脑 | 10 |
±-------------±-------+
7 rows in set (0.01 sec)
条件查询
条件分类
| 符号 | 功能 |
| — | — |
| > | 大于 |
| < | 小于 |
| >= | 大于等于 |
| <= | 小于等于 |
| = | 等于 ‘==’是错的
|
| <>
或 != | 不等于 |
| BETWEEN … AND … | 在某个范围之内(都包含) |
| IN(…) | 多选一 |
| LIKE 占位符 | 模糊查询 _单个任意字符
%多个任意字符
|
| IS NULL
| 是NULL |
| IS NOT NULL
| 不是NULL |
| AND 或 && | 并且 |
| OR 或 || | 或者 |
| NOT 或 ! | 非,不是 |
条件查询语法
– 标准语法
SELECT 列名 FROM 表名 WHERE 条件;
– 查询库存大于20的商品信息
SELECT * FROM product WHERE stock > 20;
– 查询品牌为华为的商品信息
SELECT * FROM product WHERE brand=‘华为’;
– 查询金额在4000 ~ 6000之间的商品信息
SELECT * FROM product WHERE price >= 4000 AND price <= 6000;
SELECT * FROM product WHERE price BETWEEN 4000 AND 6000;
– 查询库存为14、30、23的商品信息
SELECT * FROM product WHERE stock=14 OR stock=30 OR stock=23;
SELECT * FROM product WHERE stock IN(14,30,23);
– 查询库存为null的商品信息
SELECT * FROM product WHERE stock IS NULL;
– 查询库存不为null的商品信息
SELECT * FROM product WHERE stock IS NOT NULL;
– 查询名称以小米为开头的商品信息
SELECT * FROM product WHERE NAME LIKE ‘小米%’;
– 查询名称第二个字是为的商品信息
SELECT * FROM product WHERE NAME LIKE ‘_为%’;
– 查询名称为四个字符的商品信息
SELECT * FROM product WHERE NAME LIKE ‘____’;
– 查询名称中包含电脑的商品信息
SELECT * FROM product WHERE NAME LIKE ‘%电脑%’;
测试函数:
mysql> SELECT * FROM product WHERE NAME LIKE ‘_为%’;
±-----±-------------±------±-------±------±------------+
| id | NAME | price | brand | stock | insert_time |
±-----±-------------±------±-------±------±------------+
| 1 | 华为手机 | 3999 | 华为 | 23 | 2088-03-10 |
| 4 | 华为电脑 | 6999 | 华为 | 14 | 2088-06-16 |
±-----±-------------±------±-------±------±------------+
2 rows in set (0.01 sec)
mysql> SELECT * FROM product WHERE NAME LIKE ‘%电脑%’;
±-----±-------------±------±-------±------±------------+
| id | NAME | price | brand | stock | insert_time |
±-----±-------------±------±-------±------±------------+
| 4 | 华为电脑 | 6999 | 华为 | 14 | 2088-06-16 |
| 5 | 小米电脑 | 4999 | 小米 | 26 | 2088-07-08 |
| 6 | 苹果电脑 | 8999 | 苹果 | 15 | 2088-10-25 |
| 7 | 联想电脑 | 7999 | 联想 | NULL | 2088-11-11 |
±-----±-------------±------±-------±------±------------+
4 rows in set (0.00 sec)
排序查询
排序分类
- 注意:多个排序条件,当前边的条件值一样时,才会判断第二条件
| 关键词 | 功能 |
| — | — |
| ORDER BY 列名1 排序方式1,列名2 排序方式2 | 对指定列排序,ASC升序(默认的) DESC降序 |
排序语法
– 标准语法
SELECT 列名 FROM 表名 [WHERE 条件] ORDER BY 列名1 排序方式1,列名2 排序方式2;
– 按照库存升序排序,默认升序
SELECT * FROM product ORDER BY stock ASC;
– 查询名称中包含手机的商品信息。按照金额降序排序
SELECT * FROM product WHERE NAME LIKE ‘%手机%’ ORDER BY price DESC;
– 按照金额升序排序,如果金额相同,按照库存降序排列
SELECT * FROM product ORDER BY price ASC,stock DESC;
总结
其他的内容都可以按照路线图里面整理出来的知识点逐一去熟悉,学习,消化,不建议你去看书学习,最好是多看一些视频,把不懂地方反复看,学习了一节视频内容第二天一定要去复习,并总结成思维导图,形成树状知识网络结构,方便日后复习。
这里还有一份很不错的《Java基础核心总结笔记》,特意跟大家分享出来
目录:
部分内容截图:
-----------+
| 1 | 华为手机 | 3999 | 华为 | 23 | 2088-03-10 |
| 4 | 华为电脑 | 6999 | 华为 | 14 | 2088-06-16 |
±-----±-------------±------±-------±------±------------+
2 rows in set (0.01 sec)
mysql> SELECT * FROM product WHERE NAME LIKE ‘%电脑%’;
±-----±-------------±------±-------±------±------------+
| id | NAME | price | brand | stock | insert_time |
±-----±-------------±------±-------±------±------------+
| 4 | 华为电脑 | 6999 | 华为 | 14 | 2088-06-16 |
| 5 | 小米电脑 | 4999 | 小米 | 26 | 2088-07-08 |
| 6 | 苹果电脑 | 8999 | 苹果 | 15 | 2088-10-25 |
| 7 | 联想电脑 | 7999 | 联想 | NULL | 2088-11-11 |
±-----±-------------±------±-------±------±------------+
4 rows in set (0.00 sec)
排序查询
排序分类
- 注意:多个排序条件,当前边的条件值一样时,才会判断第二条件
| 关键词 | 功能 |
| — | — |
| ORDER BY 列名1 排序方式1,列名2 排序方式2 | 对指定列排序,ASC升序(默认的) DESC降序 |
排序语法
– 标准语法
SELECT 列名 FROM 表名 [WHERE 条件] ORDER BY 列名1 排序方式1,列名2 排序方式2;
– 按照库存升序排序,默认升序
SELECT * FROM product ORDER BY stock ASC;
– 查询名称中包含手机的商品信息。按照金额降序排序
SELECT * FROM product WHERE NAME LIKE ‘%手机%’ ORDER BY price DESC;
– 按照金额升序排序,如果金额相同,按照库存降序排列
SELECT * FROM product ORDER BY price ASC,stock DESC;
总结
其他的内容都可以按照路线图里面整理出来的知识点逐一去熟悉,学习,消化,不建议你去看书学习,最好是多看一些视频,把不懂地方反复看,学习了一节视频内容第二天一定要去复习,并总结成思维导图,形成树状知识网络结构,方便日后复习。
这里还有一份很不错的《Java基础核心总结笔记》,特意跟大家分享出来
目录:
[外链图片转存中…(img-np4jtWSw-1715644435156)]
部分内容截图:
[外链图片转存中…(img-69DrP9Ed-1715644435156)]
[外链图片转存中…(img-F860kJby-1715644435157)]