MySQL--增删改查

川长思鸟来 2022-06-02 03:07 410阅读 0赞

Center

#查看所有的数据库 Sql语句 不区分大小写 但是严重区分中英文符号,不允许使用中文符号

show databases;

#创建数据库

create database test1227;

#使用数据库

use test1227;

#查看数据库中所有的表

show tables;

#创建表 需要创建主键主键是唯一的,不能为空 int(10):10代表的是数字长度

#若不定义长度,默认长度为11 primary key为主键(唯一标识) auto_increment:设置自增

#varchar:为字符串默认长度为255 unique:唯一约束 not null 不为空约束

create table student(

id int(10) primary key auto_increment,

name varchar(20) unique,

age int(5) default 16,

sex char(2) not null

);

#查看表设计

desc student;

增:

#不按照字段添加那么就需要按照表设计的字段顺序添加

insert into student values(2,’李四’,21,’男’);

#按照字段添加必须主键设置自增,否者必须给主键赋值

insert into student(name,age,sex) values(‘王五’,25,’女’);

insertinto student(name,sex) values(‘赵六’,’男’);

insertinto student(name,age,sex) values(‘小凳子’,27,’男’);

insertinto student(name,age,sex) values(‘小红’,22,’女’),(‘小华’,26,’男’),(‘小白’,29,’男’);

删:

#删除表

drop table student;

##删除数据库

drop database test1227;

#删除 drop 与delete 的区别:

#drop 是删除表,表不存在 delete 是删除表中的数据,表仍然存在

delete from student where id = 1;

delete from student where sex = ‘男’;

delete from student where sex=’女’ and age = 22;

#删除表中的所有数据,表存在

delete from student;

改:

#修改切记:修改 set后面使用逗号分隔而不是用and 只有where 条件语句后使用and 代表并且

updatestudent set name=’小名’,age = 26,sex=’女’ where id = 2;

update student set name=’光头强’ where name = ‘小红’;

updatestudent set age = 30 where name=’王五’ and sex = ‘女’;

查:

# * 代表的是所有字段 查看当前表中的所有数据

select* from student;

#只查询姓名和年龄 select 后为查询的字段 from 表

selectname,age from student;

#查询年龄为26的学生信息

selectid,name,age,sex from student where age = 26;

#查询年龄不是26的学生信息 != <>

selectid,name,age,sex from student where age !=26;

selectid,name,age,sex from student where age <> 26;

selectid,name,age,sex from student where age >=26;

#查询id 为偶数的学生信息

selectid,name,age,sex from student where id %2=0;

#查询姓‘小’ 的学生名 %代表多个字符

selectname from student where name like ‘小%’;

# _为一个字符

selectname from student where name like ‘小__‘;

insert into student(name,age,sex) values(‘白居易’,29,’男’);

insert into student(name,age,sex) values(‘王白石’,26,’男’);

#like模糊查询

selectname from student where name like ‘白%’;

selectname from student where name like ‘%白’;

selectname from student where name like ‘%白%’;

#查询年龄在26-29之间(包含26,29)的学生信息

select id,name,age,sex from student where age between 26 and 29;

select id,name,age,sex from student where age>=26 and age<=29;

#查询id 包含 4,8,13,14的学生信息

select id,name,age,sex from student where idin (13,8,4,14);

#分页第一个参数为索引,通过索引得到页数第二个参数为每次显示的条数

select id,name,age,sex from student limit 4,2;

#将学生的年龄从小到大排序 order by 为排序本身就有从小到大的功能 asc小-大 desc:大-小

select id,name,age,sex from student order by age desc;

#聚合函数 count(统计总数) sum (求和) avg (平均值) max(最大值) min(最小值)

select count(*) from student;

select count(id) from student;

select count(1) from student;

#统计男 女分别的人数

#字段和表都可以定义别名

定义别名英语不需要定义单引号中文需要定义单引号

select count(id) as ‘总数’,sex as se from student groupby sex;

select count(id) ‘总数’,sex ‘性别’ from student groupby sex;

#统计男女人数大于3的人数 having为条件语句必须与group by 联合使用不能单独使用 where 删查改 只有有条件判断都可以使用

select count(id) ‘总数’,sex’性别’ from student groupby sex having 总数 >3;

select count(id) co ,sex ‘性别’ from studentgroup by sex having co>3;

select sum(age) from student;

select avg(age) from student;

select max(age) from student;

select min(age) from student;

发表评论

表情:
评论列表 (有 0 条评论,410人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MySQL 增删

    MySQL 增删改查 虽然经常对数据库进行操作,但有时候一些sql语句还是会忘记,因此总结一下,方便记忆。 一 对库操作 1 创建数据库 > create dat