一、SQL语言的分类
1)DDL: (Data Definition Language )如何定义的语⾔ (如何创建数据库,创建表,创建字段等)
2)DML: (数据库操作语⾔) ⼀般指的是(数据新增,修改,删除等)
3)DQL: (查询语⾔,重中之重)(数据的各种查询,你每天都在查数据)
4)TCL: (Transaction Control Language) ⽐如修改密码,创建⼀个⽤⼾,赋予权限等。
大数据相关的语言:Java、Scala、Python、SQL、Shell脚本。
二、DDL语句
1.数据库管理
1.创建数据库
create database db01;
2.创建数据库并指定编码集
create database db02 character set utf8;
3.查看所有数据库
show databases;
4.删除数据库(慎用!!!)
drop database db01;
2.表的管理
1.创建表之前,首先指定数据库
use db01;
2.创建表语句
create table stu(
name varchar(255),
age int
);
3.查看数据库中的所有表
show tables;
4.查看表结构
desc stu;
5.修改表,添加表中的一个字段
alter table stu add id int;
6.删除表中的一个字段
alter table stu drop id;
7.删除表
drop table stu;
8.将stu备份,备份表的名字为stu2
create table stu2 as select * from stu;
9.只想要表结构,不要表中的数据
create table stu3 like stu; 注:stu3是一个空表,只有stu的表结构
三、DML语句
现在数据库下有一个stu表
1.插入数据标准格式
insert into stu(id,name,age) values(1,'小明',18);
2.插入数据的省略写法
insert into stu values(2,'小红',15);
3.挑选字段插入数据
insert into stu(id,name) values(3,'小兰');
4.修改数据 将stu表中id=3的数据的age修改为13
update stu set age=13 where id=3;
5.删除数据 将stu表中age=13的数据删除
delete from stu where age=13;
6.删除stu表中所有的数据
delete from stu;
1.删除stu表中的所有的数据
delete from stu;
2.删除stu表中所有的数据
truncate table stu;
相同点:都是删除表中的数据
不同点:delete是一条一条的删除,删除的比较慢。
truncate 是先将表drop掉,再创建个一模一样的。
练习题目:
先创建一个跟stu一样的表,然后将一部分stu的数据插入到这个表中
create table stu2 like stu;
insert into stu2 select * from stu;
注意:执行这个sql语句时,stu2表必须存在。
补充:
create table stu3 as select * from stu;
将查询到的stu中的数据插入到stu3中,如果stu3不存在,则会先创建后插入。
where条件过滤语句
where常用于修改、删除以及查询
目录