SQL的命令

目录

创建用户

​编辑

DDL数据库操作

查询

创建

使用

删除

创建数据库表

在表中修改字段

查询表

DML

添加数据

修改

删除

DQL

查询


创建用户

DDL数据库操作

查询

show databases;

创建

权限问题导致无法创建,连接root修改用户权限

CREATE DATABASE db01;
CREATE DATABASE if not EXISTS db02;

使用

use db01;
SELECT DATABASE();

删除

DROP DATABASE db01;
DROP DATABASE if EXISTS db01;

创建数据库表

USE db00;
CREATE TABLE tb_user(id INT PRIMARY KEY UNIQUE COMMENT "ID",username VARCHAR(20) not NULL UNIQUE COMMENT "用户名",name VARCHAR(10) NOT NULL COMMENT "姓名",age int COMMENT "年龄",gender CHAR(1) DEFAULT "男" COMMENT "性别"
) COMMENT "用户表";
primary key (auto_increment)主键(数值自增)
unique        唯一
not null        非空
default默认
varchar()字符串,不能用string
comment注释

字符串类型要使用varchart,不能使用string。

auto_increment 在 primary key 前面。

id int auto_increment  primary key

在表中修改字段

-- 修改表的结构
-- 添加字段(列)
alter table 表名 add 段名 类型 [注释];-- 修改字段类型
alter table 表名 modify 段名 类型;-- 修改字段名
alter table 表名 change 原段名 新段名 类型;-- 删除字段
alter table 表名 drop column 段名;-- 修改表名
rename TABLE 原表名 to 新表名;
-- 修改表的结构
-- 添加字段(列)
alter table tb_user add qq varchar(11) comment 'QQ';-- 修改字段类型
alter table tb_user modify qq varchar(13);-- 修改字段名
alter table tb_user change qq qq_11 varchar(13);-- 删除字段
alter table tb_user drop column qq_11;-- 修改表名
rename TABLE tb_user to users;

查询表

-- 选择数据库
use 库名;
-- 查询当前数据库所有表,table是复数,记得加s!!!
show tables;-- 查询表的结构
desc 表名;-- 查询建表语句
show create table 表名;
-- 选择数据库
use db00;
-- 查询当前数据库所有表
show tables;-- 查询表的结构
desc users;-- 查询建表语句
show create table users;

DML

-- 创建表
use db02;
create table uu(id int auto_increment primary key ,name varchar(10) not null,age int  ,create_time varchar(20) not null 
);

添加数据

-- 指定字段添加数据
insert into 表名 (字段名1,...) values (值1,...);-- 全部字段添加数据
insert into 表名 values (值1,...);-- 指定字段批量添加数据
insert into 表名(字段名1,...) values(值1,...),(值1,...);-- 全部字段批量增加数据
insert into 表名 values(值1,...),(值1,...); 
-- 指定字段添加数据
insert into uu (name,create_time) values ('Tom',now());-- 全部字段添加数据
insert into uu values (null,'Linda',22,now());-- 指定字段批量添加数据
insert into uu(name,age,create_time) values('Tedy',21,now()),('Gabe',15,now());-- 全部字段批量增加数据
insert into uu values(null,'Amy',35,now()),(null,'Bob',36,now()); 

在添加全部字段的时候,若id是自增的话,可以添加值的位置附上null,否则会报错。

now()显示当前时间。

字段和值要一一对应。

修改

-- 修改指定数据
update 表名 set 字段名1=值1,字段名2=值2... where 条件;-- 修改指定字段
update 表名 set 字段名1=值1,字段名2=值2...;
-- 修改指定数据
update uu set name='PJ' where id=1;-- 修改指定字段
update uu set create_time='2022-01-03';

删除

-- 删除指定数据
delete from 表名 where 条件;-- 删除所有数据
delete from 表名;
-- 删除指定数据
delete from uu where id=2;-- 删除所有数据
delete from uu;

DQL

建表

	create table tb_emp (id int unsigned primary key auto_increment comment 'ID',username varchar(20) not null unique comment '用户名',password varchar(32) default '123456' comment '密码',name varchar(10) not null comment '姓名',gender tinyint unsigned not null comment '性别, 说明: 1 男, 2 女',image varchar(300) comment '图像',job tinyint unsigned comment '职位, 说明: 1 班主任,2 讲师, 3 学工主管, 4 教研主管',entrydate date comment '入职时间',create_time datetime not null comment '创建时间',update_time datetime not null comment '修改时间'
) comment '员工表';-- 准备测试数据
INSERT INTO tb_emp (id, username, password, name, gender, image, job, entrydate, create_time, update_time) VALUES(1, 'jinyong', '123456', '金庸', 1, '1.jpg', 4, '2000-01-01', '2022-10-27 16:35:33', '2022-10-27 16:35:35'),(2, 'zhangwuji', '123456', '张无忌', 1, '2.jpg', 2, '2015-01-01', '2022-10-27 16:35:33', '2022-10-27 16:35:37'),(3, 'yangxiao', '123456', '杨逍', 1, '3.jpg', 2, '2008-05-01', '2022-10-27 16:35:33', '2022-10-27 16:35:39'),(4, 'weiyixiao', '123456', '韦一笑', 1, '4.jpg', 2, '2007-01-01', '2022-10-27 16:35:33', '2022-10-27 16:35:41'),(5, 'changyuchun', '123456', '常遇春', 1, '5.jpg', 2, '2012-12-05', '2022-10-27 16:35:33', '2022-10-27 16:35:43'),(6, 'xiaozhao', '123456', '小昭', 2, '6.jpg', 3, '2013-09-05', '2022-10-27 16:35:33', '2022-10-27 16:35:45'),(7, 'jixiaofu', '123456', '纪晓芙', 2, '7.jpg', 1, '2005-08-01', '2022-10-27 16:35:33', '2022-10-27 16:35:47'),(8, 'zhouzhiruo', '123456', '周芷若', 2, '8.jpg', 1, '2014-11-09', '2022-10-27 16:35:33', '2022-10-27 16:35:49'),(9, 'dingminjun', '123456', '丁敏君', 2, '9.jpg', 1, '2011-03-11', '2022-10-27 16:35:33', '2022-10-27 16:35:51'),(10, 'zhaomin', '123456', '赵敏', 2, '10.jpg', 1, '2013-09-05', '2022-10-27 16:35:33', '2022-10-27 16:35:53'),(11, 'luzhangke', '123456', '鹿杖客', 1, '11.jpg', 2, '2007-02-01', '2022-10-27 16:35:33', '2022-10-27 16:35:55'),(12, 'hebiweng', '123456', '鹤笔翁', 1, '12.jpg', 2, '2008-08-18', '2022-10-27 16:35:33', '2022-10-27 16:35:57'),(13, 'fangdongbai', '123456', '方东白', 1, '13.jpg', 1, '2012-11-01', '2022-10-27 16:35:33', '2022-10-27 16:35:59'),(14, 'zhangsanfeng', '123456', '张三丰', 1, '14.jpg', 2, '2002-08-01', '2022-10-27 16:35:33', '2022-10-27 16:36:01'),(15, 'yulianzhou', '123456', '俞莲舟', 1, '15.jpg', 2, '2011-05-01', '2022-10-27 16:35:33', '2022-10-27 16:36:03'),(16, 'songyuanqiao', '123456', '宋远桥', 1, '16.jpg', 2, '2010-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:05'),(17, 'chenyouliang', '12345678', '陈友谅', 1, '17.jpg', null, '2015-03-21', '2022-10-27 16:35:33', '2022-10-27 16:36:07'),(18, 'zhang1', '123456', '张一', 1, '2.jpg', 2, '2015-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:09'),(19, 'zhang2', '123456', '张二', 1, '2.jpg', 2, '2012-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:11'),(20, 'zhang3', '123456', '张三', 1, '2.jpg', 2, '2018-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:13'),(21, 'zhang4', '123456', '张四', 1, '2.jpg', 2, '2015-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:15'),(22, 'zhang5', '123456', '张五', 1, '2.jpg', 2, '2016-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:17'),(23, 'zhang6', '123456', '张六', 1, '2.jpg', 2, '2012-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:19'),(24, 'zhang7', '123456', '张七', 1, '2.jpg', 2, '2006-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:21'),(25, 'zhang8', '123456', '张八', 1, '2.jpg', 2, '2002-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:23'),(26, 'zhang9', '123456', '张九', 1, '2.jpg', 2, '2011-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:25'),(27, 'zhang10', '123456', '张十', 1, '2.jpg', 2, '2004-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:27'),(28, 'zhang11', '123456', '张十一', 1, '2.jpg', 2, '2007-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:29'),(29, 'zhang12', '123456', '张十二', 1, '2.jpg', 2, '2020-01-01', '2022-10-27 16:35:33', '2022-10-27 16:36:31');

基础查询

-- 查询指定字段
select 字段1,字段2... from 表名;-- 查询所有字段
-- 推荐
select 字段1,字段2... from 表名;
-- 不推荐
select * from 表名;-- 查询给字段设置别名
select 字段1 as 别名1, 字段2 as 别名2 from 表名;
select 字段1 别名1, 字段2 别名2 from 表名;
select 字段1 '别名1', 字段2 '别名2' from 表名;-- 查询,去除重复记录
select distinct 字段 from 表名;
-- 1. 查询指定字段 name,entrydate 并返回
select name,entrydate from emp;-- 2. 查询返回所有字段
select username,password,name,gender,image,job,entrydate,create_time,update_time from emp;
select * from emp;-- 3. 查询所有员工的 name,entrydate, 并起别名(姓名、入职日期)
select name as 姓名, entrydate as 入职日期 from emp;
select name 姓名, entrydate 入职日期 from emp;
select name '姓 名', entrydate '入职/日期' from emp;-- 4. 查询已有的员工关联了哪几种职位(不要重复)
select job from emp;
select distinct job from emp;

别名中如果有空格或特殊字符,可以使用引号把整个别名圈起来。

条件查询

select 段名... from 表名where 条件;
-- 1. 查询 姓名 为 杨逍 的员工
select * from emp where name='杨逍';-- 2. 查询 id小于等于5 的员工信息
select * from empwhere id <= 5;-- 3. 查询 没有分配职位 的员工信息
select * from empwhere job is null;
-- 不能使用job = NULL-- 4. 查询 有职位 的员工信息
select * from emp where job is not null;-- 5. 查询 密码不等于 '123456' 的员工信息
select * from empwhere password != 123456;select * from empwhere password <> 123456;-- 6. 查询 入职日期 在 '2000-01-01' (包含) 到 '2010-01-01'(包含) 之间的员工信息
select * from empwhere entrydate between '2000-01-01' and '2010-01-01';select * from empwhere entrydate >= '2000-01-01' and entrydate <= '2010-01-01'; -- 7. 查询 入职时间 在 '2000-01-01' (包含) 到 '2010-01-01'(包含) 之间 且 性别为女 的员工信息
select * from empwhere entrydate between '2000-01-01' and '2010-01-01' and gender = 2 ;-- 8. 查询 职位是 2 (讲师), 3 (学工主管), 4 (教研主管) 的员工信息
select * from empwhere job = 2 or job = 3 or job =4;select * from empwhere job in(2,3,4);-- 9. 查询 姓名 为两个字的员工信息
select * from empwhere name like '__';-- 10. 查询 姓 '张' 的员工信息
select * from empwhere name like '张%';

运算符       功能
>大于
>=大于等于
<小于
<=小于等于
=等于
<> 或 !=不等于
between .... and ....在某个范围之内
in(.....)值在(...)中,多选一
like 占位符       模糊匹配('_'匹配耽搁字符,'%'匹配任意个字符)
is null       
and 或 &&并且
or 或 ||或者
not 或 !非,不是

如果你觉得本文对你有用的话,请随意打赏~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/687849.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

后端的一些科普文章

后端开发一般有4个方面 后端开发流程 1阶段 域名认证 是每一个计算机在网络上有一个ip地址&#xff0c;可以通过这个地址来访问102.305.122.5&#xff08;举例&#xff09;&#xff0c; 但是这个公网ip地址&#xff0c;比较难记忆&#xff0c;所以大家使用域名来更好的记忆…

你可能喜欢但也许还不知道的好用网站-搜嗖工具箱

在线工具 https://www.zxgj.cn/ 作为一个工作生活好帮手&#xff0c;在线咨询网站提供了丰富的实用功能&#xff0c;从工作中的图表制作、图片修改到生活中的各种测试、健康、娱乐、学习、理财等等涵盖面很广。 在线工具网站从界面和操作上来看对用户也很友好&#xff0c;页面…

bash: docker-compose: 未找到命令

bash: docker-compose: 未找到命令 在一台新的服务器上使用 docker-compose 命令时&#xff0c;报错说 docker-compose 命令找不到&#xff0c;在网上试了一些安装方法&#xff0c;良莠不齐&#xff0c;所以在这块整理一下&#xff0c;如何正确快速的安装 docker-compose cd…

Blender细节补充

1.饼状菜单&#xff0c;用于快速切换/选择 例如&#xff1a; ~&#xff1a;切换视图 Z&#xff1a;切换着色方式 &#xff0c;&#xff1a;切换坐标系 .&#xff1a;切换基准点 Shift S&#xff1a;吸附 有两种使用方式&#xff1a; -点选 -滑选&#xff0c;按快捷键…

文旅行业| 某景区导游培养和管理项目成功案例纪实

——整合导游资源并进行统一管理&#xff0c;构建完善的培养与管理机制&#xff0c;发挥景区导游价值 【客户行业】文旅行业&#xff1b;景区&#xff1b;文旅企业 【问题类型】人才培养&#xff1b;人员管理 【客户背景】 南方某5A级景区&#xff0c;作为国内极具代表性和特…

【JVM基础篇】JVM入门介绍

JVM入门介绍 为什么学习JVM 岗位要求 解决工作中遇到的问题 性能调优 真实案例 导出超大文件&#xff0c;系统崩溃从数据库中查询超大量数据出错消费者消费来不及导致系统崩溃Mq消息队列接受消息导致的内存泄漏业务高峰期系统失去响应 初识JVM 什么是JVM&#xff1f; JV…

钒回收树脂五氧化二钒净化回收工艺

钒是一种重要的工业金属&#xff0c;广泛应用于钢铁合金、化工、航空和电池材料等领域。随着资源的日益紧张和环保要求的提高&#xff0c;回收利用钒成为了一个重要的研究方向。树脂吸附技术是一种常用的从废水或废料中回收钒的方法&#xff0c;具有操作简便、效率高、成本相对…

反了!美国假冒邮政服务钓鱼网站访问量竟然超过正规官网

美国邮政是美国主要的包裹信件投递机构之一&#xff0c;长期以来该单位都是网络钓鱼和诈骗的针对目标。对美国公民来说&#xff0c;在假期通常都会收到声称来自美国邮政的诈骗。美国邮政甚至单独建设的网页提醒消费者警惕诈骗信息&#xff1a; 专用提醒网页 Akamai 的研究人员…

maven-test不通过导致无法打包

背景 别人写的一个test包&#xff0c;没有测试通过&#xff0c;导致最后没有打包成功 解决方案 package生命周中不要勾选test

Vue3知识总结-1

前面学习一段时间的前端&#xff0c;但是没有进行过太多的练习&#xff0c;并且对于里面一些重要的知识点也没有去着重的记忆&#xff0c;所以打算在学习Vue3的时候&#xff0c;做一些笔记&#xff0c;方便后面翻看。这个笔记会对于学习一些做一些&#xff0c;而不是一个整体的…

【Linux网络编程】I/O多路转接之select

select 1.初识select2.了解select基本概念和接口介绍3.select服务器4.select特点及优缺点总结 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1f496;&#x1f496; 你的支持是对我最大的鼓励&#xff0c;我们一起努力吧!&#x1f603;&#x1f603;…

阿里云ECS服务器实例挂载数据盘步骤(磁盘自动挂载.、访问挂载点)

阿里云ECS服务器实例挂载数据盘步骤 1.磁盘自动挂载 首先登录阿里云ECS服务器&#xff0c;通过 df -h 命令查看当前磁盘挂载情况 通过 fdisk -l 命令查看磁盘情况&#xff0c;可以发现有两个盘&#xff1a; 系统盘 /dev/vda: 60GB&#xff0c; 数据盘 /dev/vdb: 500GB 使用…