1.使用库
USE 库名;
2.查询这个库中有哪些表
SHOW TABLES ;
3.创建一张新的表
create table 表名(
字段名称1 字段类型1,
字段名称2 字段类型2,
...
...
字段名称n 字段类型n
) ;
4. 查询学生的表的结构
DESC表名 ;
5.DML语句:数据库操作语句
给表中插入数据
插入数据的语法
1:insert into 表名 values(值1,值2,值3,值4...值n);
插入表的数据支持 :一次插入多条数据
2.insert into 表名 values(值1,值2,值3,值4...值n),(值1,值2,值3,值4...值n),(值1,值2,值3,值4...值n);
插入部分字段,没有插入的字段,默认值就是null, 也支持一次性插入多条数据
3.insert into 表名(字段名称1,字段名称2....) values(值1,值2...) ;
注意事项:
1)插入的这些值必须要和表中的字段对应上; 先后顺序保证一致!
2)目前没有加入"数据库约束",可以插入非法数据,举例:id重复 ,
后期需要使用数据库约束来限定用户的操作表的行为!
6. DML语句之修改表记录
一般实际开发中修改:都是带条件修改 (推荐)
update 表名 set 字段名称 = 值 where 条件 ;
一次性修改多个字段
update 表名 set 字段名称1 = 值 ,字段名称2 =值2.... where 条件;
不带条件 属于批量修改 (部分场景可以用的)
update 表名 set 字段名称= 值,字段名称2 =值2....
7.DML语句之删除表的记录
delete from 表名 where 条件 ; 带条件删除记录 (使用的非业务字段id删除)
delete from 表名 :删除全表数据
truncate table 表名; 删除全表数据
delete from 表名 和 truncate table 表名 :两个区别?
共同点:都是可以删除全表的记录的;
不同点:
delete from 表名 ; 仅仅只是将表的全部记录删除了,表还在!
它针对id(非业务字段:设置主键并且自增长),它不影响自增长主键的这个值; (数据库约束后面讲)
truncat table 表名; 将表所有数据删除,而且还会把删除之后,
自动创建一个张一模一样的表,影响自增主键的值!
1. DQL语句最通用的语法:查询表的全部数据
* 代表所有字段,仅仅是自己玩的时候可以用,实际开发中不能用*,需要写上全部的字段名称
SELECT * FROM 表名 ;
2.-- DQL语句 :数据库的查询语句 里面语法是最多的
-最基本的查询语句 select
查询全表数据:select * from 表名;
SELECT * FROM 表名 ;
实际开发中查询全部字段,把字段名称全部写上
3.查询全部字段的时候,给字段起一个别名 as '别名名称' ,as省略
4. 当表的名称比较长的时候,可以给表名起一个别名;
5. 可以查询部分字段
6.-- 发现:字段冗余(重复度大) 字段去重 DISTINCT 后面跟上字段名称
SELECT DISTINCT address FROM 表名;
7.DQL语句之条件查询 where 关键字
使用 赋值运算符=,比较运算符 <,<=,>=,>,!=, mysql中的不等于 <>
Java中逻辑运算符:&&,|| mysql推荐使用 and , or
针对两个范围查询: 可以使用&&,可以使用and, 也可以 "字段名称 between 值1 and 值2"
需求:查询年龄大于20岁的学生所有信息
8.
Java语言中:去判断某个条件的内容为null ,mysql语言不支持这个格式 ==null
需求:查询学生的英语成绩为null的学生所有信息
select * from表名 where 字段 == null ;(不支持)
mysql中判断某个字段为null,使用的语法是 is null
判断某个字段不为null,使用的语法是 is not null
SELECT * FROM student3 WHERE english IS NULL ;
9.如果字段名称是null,相加为null mysql提供函数 ifnull(字段名称,值); 如果字段名称是null,给一个默认值
10.SHOW VARIABLES LIKE '%character%' ;
DQL语句之 where条件后面加入模糊查询 ---关键字 like
select 字段列表 from 表名 where 字段名称 like '%xxx%' ;
-%:代表任何多个字符或者某个字符 (使用居多):网站门户系统---"搜索商品" ,模糊搜索
_:代表某个单个字符
11. 聚合函数查询 :针对int类型 :单行单列数据
select 聚合函数 from 表名 where 还可以指定条件;
count(字段名称):查询表中记录 ,字段名称使用都是id,非业务字段
avg(字段名称): 查询这个字段中平均值
sum(字段列表):求和函数
max(字段名称):最大值
min(字段名称):最小值
11.
select语句嵌套select语句 --- 子查询
需求:查询出学生数学成绩大于 数学平均分的学生所有信息;
使用where 条件 后面带上 比较运算符...
12.-- DQL之排序查询 order by
-- select 字段列表 from 表名 order by 字段名称 排序规则(asc(默认值就是升序)或者desc 降序)