数据库基本语句

用DOS命令窗口操作数据库

启动数据库:mysql -u用户名 -p密码

在这里插入图片描述

当出现这个窗口意味着启动成功!

DDL语句

数据库操作语句

  1. 查询当前所有数据库名称:show databases;
  2. 创建数据库:create database 数据库名;
  3. 如果不存在创建一个新的数据库:create database if not exists 数据库名;
  4. 删除数据库:drop database 数据库名;
  5. 判断删除(如果存在就删除):drop database if exists 数据库名;

数据库表操作语句

创建表之前要先声明给哪个数据库创建:use 数据库名;

  1. 创建表:
    create table 表明(列名1 字段类型,列名2 字段类型…);

  2. 查看数据库中所有表:show tables;

  3. 查看当前表的结果:desc 表名:

  4. 修改中文乱码:alter database 数据库名 default character set 字符集;

  5. 添加一个新的列:名:alter table 表名 add 列名 字段类型;

  6. 修改表字段名称:alter table 表名 change 旧列名 新列名 字段类型;

  7. 修改表字段类型:alter table 表名 modify 列名 字段类型;

  8. 修改表名:alter table 当前表名 rename to 新的表名;

  9. 删除表中某个列:alter table 表名 drop 列名;

  10. 删除表:drop table 表名;/drop table if exists 表名;

  11. 复制表:create table 新表名 like 其他表名;

DML语句

操作表中记录

给表中插入数据:
方式一:默认全部插入数据
insert into 表名 values(值1,值2,值3…);
方式二:部分插入
insert into 表名(列名1,列名2,列名3) values(值1,值2,值3);

带条件修改表中记录:
update 表名 set 字段名称=值 where 条件语句;
eg:update student set name=‘张三’ where id=1;(把id是1的学生名改为张三)
批量修改:update 表名 set字段名称;

删除表中记录:
删除表:delete from 表名;
带条件删除:delete from 表名 where 条件;

delete和truncate的区别?

delete from 表名:删除全表中记录,针对自增长主键的字段不受影响,1,2,3下一次从4开始增长;
truncate from 表名:删除一张表,在复制一张一模一样的表,针对自增长主键字段置空,下一次插入数据从1开始一直自增。

DQL语句

对表的查询语句
基本查询:select * from 表名;
指定查询:select 列名1,列名2 from 表名;
查询字段的时候去重:select distinct 字段 from 表名;

给字段起名字(as)也可以省略:
select name (as)‘姓名’,sex ‘性别’ from 表名;

条件查询:查询年龄大于20的姓名和年龄
select name,age from student where age>20;

范围查询:查询年龄在20到30的学生
select * from student where age between 20 and 30;

查询多个数据用in(类似于集合数据)
select * from student where age in(18,28,30)

模糊查询:关键字like
select * from 表名 where 字段名称 like ‘占位符号’;
%—>包含的字符,相当于一个字符
_ 代表单个字符
eg:’%张%’ 名字里有张的
'马_'姓马,名字里有两个字符

排序:
select * from 表名 order by 字段名称 默认升序排序;
ASC 升序 DESC 降序

分组查询:group by
select sex,count(id)from student group by sex;按性别分组

分页查询:limit
select * from 表名 limit 起始行数,每页显示条数
起始行数=(当前页码数-1)也就是索引值 * 每页显示条数

筛选:having
可跟聚合函数

select 分组字段,聚合函数
		from 表名
		where 条件	//1
		group by 分组字段	//2
		having 聚合函数 符合什么条件;	//3

having和group by的区别

group by 之前先执行where条件语句,后面才是分组,having放在group by 之后(先后顺序问题);group by 后面跟的是分组得我字段,不能使用聚合函数;而having 后面可以使用聚合函数。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值