没有合适的资源?快使用搜索试试~ 我知道了~
sql基础代码.docx
需积分: 5 0 下载量 124 浏览量
2022-05-06
13:18:05
上传
评论
收藏 34KB DOCX 举报
温馨提示
试读
26页
sql基础代码.docx
资源详情
资源评论
资源推荐
-- 查看系统中有哪些数据库
show databases;
-- 创建 test 数据库
create database test;
-- 选择进入数据库
use test;
-- 删除数据库(慎用)
drop database test;
-- 创建数据表
create table department(
deptno int,
dname varchar(10),
num int
);
-- 查看当前数据库中有哪些表
show tables;
-- 查看表结构
desc department;
-- 删除数据表(慎用)
-- drop table department;
-- 创建带有约束条件的表(因为两张表中有主外键约束,所以需要先创建主键所在的 dept,再
创建外键所在的 emp)
create table dept(
deptno int primary key,
dname varchar(10),
loc varchar(15)
);
create table employee(
empid int primary key auto_increment,
ename varchar(10) unique,
job varchar(10) not null default "未知",
mgr int,
hiredate date,
sal $oat default 0,
comm $oat,
deptno int,
foreign key(deptno) references dept(deptno)
);
desc employee;
-- 修改表名
alter table employee rename emp;
-- 修改字段名
alter table emp change empid empno int;
-- 修改字段类型
alter table emp modify sal decimal default 0;
-- 添加字段
alter table emp add city varchar(20);
-- 修改字段的排列位置:
alter table emp modify city varchar(20) &rst;
alter table emp modify city varchar(20) after job;
-- 删除字段
alter table emp drop city;
desc emp;
-- 插入数据:字段名与字段值的数据类型、个数、顺序必须一一对应
insert into dept(deptno,dname,loc) values (10,'accounting','new york'),
(20,'research','dallas');
insert into dept values (30,'sales','chicago'),
(40,'operations','boston');
select * from dept;-- 查看表中的数据
select * from emp;
-- 批量导入数据(路径中不能有中文,‘\’在编程语言中是转义符,需要将‘\\’改为‘’或‘/’)
-- 先有部门,才能存储每个部门的员工信息,所以先添加 dept 的部门信息,再导入 emp
的员工信息
load data in&le "C:/ProgramData/MySQL/MySQL Server
8.0/Uploads/employee.csv"
into table emp
&elds terminated by ','
ignore 1 lines;
select * from emp; -- 检查导入数据内容
select count(*) from emp; -- 检查导入数据总行数
-- 更新数据
set sql_safe_updates=0; -- 设置数据库安全权限
update emp set sal=sal+1000 where ename='smith';
update emp set sal=sal+1000;
-- 删除数据
delete from emp where deptno=20;
delete from emp;
-- 清空数据
truncate emp;
-- 单表查询(虚拟结果集)
use test;
select * from emp;
-- 查询指定列:查询 emp 表中 ename,job,sal
select ename,job,sal from emp;
-- 设置别名:查询每位员工调整后的薪资(基本工资+1000)
select *,sal+1000 from emp;
select *,sal+1000 as 调薪 from emp;
select *,sal+1000 调薪 from emp;-- as 关键字可以省略
-- 练习:查询每位员工的年薪(基本工资*12):empno,ename,年薪
select empno,ename,sal*12 as 年薪 from emp;
-- 查询不重复的数据:查询 emp 表中有哪些部门
select distinct deptno from emp;
select distinct deptno,job from emp;-- distinct 多字段去重时位于第一个字段的前面
-- 条件查询
-- 查询基本工资大于等于 2000 小于等于 3000 的员工信息
select *
from emp
where sal>=2000 and sal<=3000;
select *
from emp
where sal between 2000 and 3000;
-- 查询 10 号部门和 20 号部门中 sal 低于 2000 的员工信息
select *
from emp
where (deptno=10 or deptno=20) and sal<2000;
select *
from emp
where deptno in (10,20) and sal<2000;
-- 练习:查询 salesman 的所属部门:姓名,职位,所在部门
select ename,job,deptno
from emp
where job='salesman';
-- 空值查询
-- 查询 mgr 为空的记录
select *
from emp
where mgr is null;
-- 练习:查询 comm 不为空的记录
select *
from emp
where comm is not null;
-- 模糊查询
-- 查询姓名以 a 开头的员工信息
select *
from emp
where ename like 'a%';
-- 查询姓名中包含 a 的员工信息
select *
from emp
剩余25页未读,继续阅读
m0_70210694
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0