MySQL-SQL基础1
p.p1 { margin: 0; font: 11px Menlo; background-color: rgba(128, 128, 128, 0.5); min-height: 13px }
p.p2 { margin: 0; font: 11px Menlo; background-color: rgba(128, 128, 128, 0.5) }
span.s1 { font-variant-ligatures: no-common-ligatures }
#插入 mysql> insert into emp values('zzx1','2002-03-09','2009-04-03','2001',3,22); Query OK, 1 row affected (0.00 sec) mysql> insert into emp values('ttx2','20023-04-10','2010-03-04','2002',4,23); ERROR 1292 (22007): Incorrect date value: '20023-04-10' for column 'birth' at row 1 mysql> insert into emp values('ttx2','2023-04-10','2010-03-04','2002',4,23); Query OK, 1 row affected (0.00 sec) mysql> select * from emp; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 2002.00 | 4 | 23 | +-------+------------+------------+---------+--------+------+ 3 rows in set (0.00 sec) #更新 mysql> update emp set sal=4000 where ename='ttx2'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from emp; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 4000.00 | 4 | 23 | +-------+------------+------------+---------+--------+------+ 3 rows in set (0.00 sec) mysql> select distinct deptno from emp; +--------+ | deptno | +--------+ | 1 | | 3 | | 4 | +--------+ 3 rows in set (0.01 sec) #查询 mysql> select * from emp where deptno=1; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | +-------+------------+------------+---------+--------+------+ 1 row in set (0.00 sec) mysql> select * from emp where deptno=2; Empty set (0.00 sec) mysql> select * from emp where deptno=3; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | +-------+------------+------------+---------+--------+------+ 1 row in set (0.00 sec) mysql> select * from emp order by sal; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 4000.00 | 4 | 23 | +-------+------------+------------+---------+--------+------+ 3 rows in set (0.00 sec) mysql> select * from emp order by deptno; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 4000.00 | 4 | 23 | +-------+------------+------------+---------+--------+------+ 3 rows in set (0.00 sec) #查询排序 mysql> select * from emp order by deptno,sal desc; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 4000.00 | 4 | 23 | +-------+------------+------------+---------+--------+------+ 3 rows in set (0.00 sec) #分页查询 mysql> select * from emp order by sal limit 3; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 4000.00 | 4 | 23 | +-------+------------+------------+---------+--------+------+ 3 rows in set (0.00 sec) mysql> select * from emp order by sal limit 1,3; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 4000.00 | 4 | 23 | +-------+------------+------------+---------+--------+------+ 2 rows in set (0.00 sec) #查询表总数 mysql> select count(1) from emp; +----------+ | count(1) | +----------+ | 3 | +----------+ 1 row in set (0.00 sec) #针对emp表进行统计deptno的个数 mysql> select deptno,count(1) from emp group by deptno; +--------+----------+ | deptno | count(1) | +--------+----------+ | 1 | 1 | | 3 | 1 | | 4 | 1 | +--------+----------+ 3 rows in set (0.00 sec) #对ename排序并计算 mysql> select ename,count(1) from emp group by ename; +-------+----------+ | ename | count(1) | +-------+----------+ | ttx2 | 1 | | zzx1 | 2 | +-------+----------+ 2 rows in set (0.00 sec) #对sal排序并计算 mysql> select sal,count(1) from emp group by sal; +---------+----------+ | sal | count(1) | +---------+----------+ | 2000.00 | 1 | | 2001.00 | 1 | | 4000.00 | 1 | +---------+----------+ 3 rows in set (0.00 sec) #对age1排序并计算 mysql> select age1,count(1) from emp group by age1; +------+----------+ | age1 | count(1) | +------+----------+ | 21 | 1 | | 22 | 1 | | 23 | 1 | +------+----------+ 3 rows in set (0.01 sec) #查看emp表结构 mysql> desc emp; +---------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+---------------+------+-----+---------+-------+ | ename | varchar(20) | YES | | NULL | | | birth | date | YES | | NULL | | | hirdate | date | YES | | NULL | | | sal | decimal(10,2) | YES | | NULL | | | deptno | int(2) | YES | | NULL | | | age1 | int(4) | YES | | NULL | | +---------+---------------+------+-----+---------+-------+ 6 rows in set (0.00 sec) #对birth列排序并计算 mysql> select birth,count(1) from emp group by birth; +------------+----------+ | birth | count(1) | +------------+----------+ | 2000-01-01 | 1 | | 2002-03-09 | 1 | | 2023-04-10 | 1 | +------------+----------+ 3 rows in set (0.00 sec) #对hirdate列排序并计算 mysql> select hirdate,count(1) from emp group by hirdate; +------------+----------+ | hirdate | count(1) | +------------+----------+ | 2000-01-01 | 1 | | 2009-04-03 | 1 | | 2010-03-04 | 1 | +------------+----------+ 3 rows in set (0.00 sec) #统计部门人数同时统计总人数 mysql> select deptno,count(1) from emp group by deptno with rollup; +--------+----------+ | deptno | count(1) | +--------+----------+ | 1 | 1 | | 3 | 1 | | 4 | 1 | | NULL | 3 | +--------+----------+ 4 rows in set (0.00 sec) #统计ename同时统计总人数 mysql> select ename,count(1) from emp group by ename with rollup; +-------+----------+ | ename | count(1) | +-------+----------+ | ttx2 | 1 | | zzx1 | 2 | | NULL | 3 | +-------+----------+ 3 rows in set (0.00 sec) #统计出生人数同时统计总人数 mysql> select birth,count(1) from emp group by birth with rollup; +------------+----------+ | birth | count(1) | +------------+----------+ | 2000-01-01 | 1 | | 2002-03-09 | 1 | | 2023-04-10 | 1 | | NULL | 3 | +------------+----------+ 4 rows in set (0.00 sec) #统计录用时间同时统计总人数 mysql> select hirdate,count(1) from emp group by hirdate with rollup; +------------+----------+ | hirdate | count(1) | +------------+----------+ | 2000-01-01 | 1 | | 2009-04-03 | 1 | | 2010-03-04 | 1 | | NULL | 3 | +------------+----------+ 4 rows in set (0.00 sec) #统计薪资数同时统计总人数 mysql> select sal,count(1) from emp group by sal with rollup; +---------+----------+ | sal | count(1) | +---------+----------+ | 2000.00 | 1 | | 2001.00 | 1 | | 4000.00 | 1 | | NULL | 3 | +---------+----------+ 4 rows in set (0.00 sec) #统计年龄同时统计总人数 mysql> select age1,count(1) from emp group by age1 with rollup; +------+----------+ | age1 | count(1) | +------+----------+ | 21 | 1 | | 22 | 1 | | 23 | 1 | | NULL | 3 | +------+----------+ 4 rows in set (0.00 sec) #统计部门大于0的部门 mysql> select deptno,count(1) from emp group by deptno having count(1)>0; +--------+----------+ | deptno | count(1) | +--------+----------+ | 1 | 1 | | 3 | 1 | | 4 | 1 | +--------+----------+ 3 rows in set (0.00 sec) #计算薪资总数、最高薪资、最低薪资 mysql> select sum(sal),max(sal),min(sal) from emp; +----------+----------+----------+ | sum(sal) | max(sal) | min(sal) | +----------+----------+----------+ | 8001.00 | 4000.00 | 2000.00 | +----------+----------+----------+ 1 row in set (0.00 sec) #联表查询 mysql> create table dept(deptno int(10),deptname varchar(20)); Query OK, 0 rows affected (0.01 sec) mysql> insert into dept values(1,'tech'); Query OK, 1 row affected (0.00 sec) mysql> insert into dept values(2,'sale'); Query OK, 1 row affected (0.00 sec) mysql> insert into dept values(3,'hr'); Query OK, 1 row affected (0.00 sec) mysql> select ename from emp where emp.deptno=emp.deptno; +-------+ | ename | +-------+ | zzx1 | | zzx1 | | ttx2 | +-------+ 3 rows in set (0.00 sec) #左连接查询 mysql> select ename,deptname from emp left join dept on emp.deptno=dept.deptno; +-------+----------+ | ename | deptname | +-------+----------+ | zzx1 | tech | | zzx1 | hr | | ttx2 | NULL | +-------+----------+ 3 rows in set (0.00 sec) #右连接查询 mysql> select ename,deptname from dept right join emp on dept.deptno=emp.deptno; +-------+----------+ | ename | deptname | +-------+----------+ | zzx1 | tech | | zzx1 | hr | | ttx2 | NULL | +-------+----------+ 3 rows in set (0.00 sec) mysql> select * from emp; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 4000.00 | 4 | 23 | +-------+------------+------------+---------+--------+------+ 3 rows in set (0.00 sec) mysql> select * from dept; +--------+----------+ | deptno | deptname | +--------+----------+ | 1 | tech | | 2 | sale | | 3 | hr | +--------+----------+ 3 rows in set (0.01 sec) mysql> insert into dept values(4,'sl'); Query OK, 1 row affected (0.00 sec) mysql> insert into emp values('ssss','2019-01-01','2018-01-01',5000,2,24); Query OK, 1 row affected (0.00 sec) mysql> select * from dept; +--------+----------+ | deptno | deptname | +--------+----------+ | 1 | tech | | 2 | sale | | 3 | hr | | 4 | sl | +--------+----------+ 4 rows in set (0.00 sec) mysql> select * from emp; +-------+------------+------------+---------+--------+------+ | ename | birth | hirdate | sal | deptno | age1 | +-------+------------+------------+---------+--------+------+ | zzx1 | 2000-01-01 | 2000-01-01 | 2000.00 | 1 | 21 | | zzx1 | 2002-03-09 | 2009-04-03 | 2001.00 | 3 | 22 | | ttx2 | 2023-04-10 | 2010-03-04 | 4000.00 | 4 | 23 | | ssss | 2019-01-01 | 2018-01-01 | 5000.00 | 2 | 24 | +-------+------------+------------+---------+--------+------+ 4 rows in set (0.00 sec) mysql> select ename,deptname from emp left join dept on emp.deptno=dept.deptno; +-------+----------+ | ename | deptname | +-------+----------+ | zzx1 | tech | | ssss | sale | | zzx1 | hr | | ttx2 | sl | +-------+----------+ 4 rows in set (0.00 sec) mysql> select ename,deptname from dept right join emp on dept.deptno=emp.deptno; +-------+----------+ | ename | deptname | +-------+----------+ | zzx1 | tech | | ssss | sale | | zzx1 | hr | | ttx2 | sl | +-------+----------+ 4 rows in set (0.00 sec)
MySQL-SQL基础1的更多相关文章
- 2.Mysql SQL基础
2.Mysql SQL基础2.1 SQL简介 SQL(Structure Query Language)是结构化查询语言.2.2 SQL使用入门 2.2.1 SQL分类 SQL分为DDL.DML(DQ ...
- 3 MySQL SQL基础
目录 1. SQL概述2. 数据库操作3. 表操作4. 记录操作 1. SQL概述 SQL,结构化查询语言(Structured Query Language),一种数据库查询和程序设计语言,用于存取 ...
- mysql sql 基础总结
1 mysql top n使用 select * from table limit n; 2 统配符使用必须和like结合使用 like % 通配符 描述 % 替代一个或多个字符 _ 仅替代一个 ...
- mysql使用基础 sql语句(一)
csdn博文地址:mysql使用基础 sql语句(一) 点击进入 命令行输入mysql -u root -p,回车再输入密码,进入mysql. 终端命令以分号作为一条语句的结束,可分为多行输入,只需 ...
- MySQL基础整理(一)之SQL基础(未完成)
大家好,我是浅墨竹染,以下是MySQL基础整理(一)之SQL基础 1.SQL简介 SQL(Structure Query Language)是一种结构化查询语言,是使用关系模型的数据库应用语言. 2. ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- sql 基础练习 计算7天各个时间点的总和 group by order mysql一次查询多个表
SQL 基础练习 -- 创建数据库 CREATE DATABASE school CHARACTER SET UTF8; -- 使用数据库 USE school; -- id: 学生的id -- na ...
- (2.16)Mysql之SQL基础——函数
(2.16)Mysql之SQL基础——函数 关键词:mysql函数,mysql自定义函数,mysql聚合函数,mysql字符串函数,mysql数值函数 1.自定义函数 -- (1)一般形式 creat ...
- (2.15)Mysql之SQL基础——开发设计最佳规范
(2.15)Mysql之SQL基础——开发设计最佳规范 关键字:mysql三大范式,mysql sql开发规范 分析: show profile.mysqllsla.mysqldrmpslow.exp ...
- (2.14)Mysql之SQL基础——游标
(2.14)Mysql之SQL基础——游标 关键词:Mysql游标 -- (1)定义游标 declare cur_name cursor for select * from table_name wh ...
随机推荐
- 为什么要学习Netty?
一.传统的BIO编程 网络编程的基本模型是 Client/Server 模型,也就是两个进程之间进行相互通信,其中服务端提供位置信息(绑定的 IP 地址和监听端口),客户端通过连接操作向服务端监听 ...
- solr(CVE-2020-13957)文件上传
影响版本 Apache Solr 6.6.0 - 6.6.5 Apache Solr 7.0.0 - 7.7.3 Apache Solr 8.0.0 - 8.6.2 环境搭建 下载环境 http:// ...
- 大数据学习(17)—— HBase表设计
为啥要把表设计拿出来独立成章?因为我觉得像我这样搞了很多年Java后端开发的技术人员,在学习HBase的时候,会受到关系型数据库3NF.BCNF的影响.事实上,数据库范式在HBase里完全没用,必须转 ...
- Dubbo 实现一个Load Balance (用于灰度发布)
Dubbo 可以实现的扩展很多, 官方文档在这: https://dubbo.apache.org/zh/docs/v2.7/dev/impls/ (太简单了....) 下面我们实现一个Load Ba ...
- C++利用模板在Windows上快速调用DLL函数
更新日志 --------- 2021/08/01 更新V2.2 增加 GetHmodule 函数 - 允许用户获取HMODULE以验证加载DLL是否成功. 2021/08/03 更新V2.3 增加 ...
- java 注释,关键字和标识符
注释 注释是为了防止当写代码的时间过久了之后,忘记了这行代码的意思或者是在一个大型的项目里面,不可能每一个模块的功能你都记得,所以需要一个注释来帮助记忆. 注释不会被执行 平时写代码一定要养成写注释的 ...
- 006 媒体独立接口(MII,Meida Independent Interface)
一.MII接口 MII接口Medium Independent Interface MII(Media Independent Interface)即媒体独立接口,MII接口是MAC与PHY连接的标准 ...
- 001 PCI Express体系结构(一)
一 .PCI总线的基本知识 PCI总线作为处理器系统的局部总线,主要目的是为了连接外部设备,而不是作为处理器的系统总线连接Cache和主存储器.但是PCI总线.系统总线和处理器体系结构之间依然存在着紧 ...
- STM32—PID控制在直流电机中的应用
文章目录 一.PID控制算法 1.什么是PID 2.PID系数的理解 Ⅰ.比例(P)部分 Ⅱ.积分(I)部分 Ⅲ.微分(D)部分 3.PID的数字化处理 二.位置闭环控制 三.速度闭环控制 一.PID ...
- Windows内核基础知识-1-段寄存器
Windows内核基础知识-1-段寄存器 学过汇编的应该都知道段寄存器,在Windows里段寄存器有很多,之前可能只接触了ds数据段,cs 代码段这种,今天这个博客就介绍Windows一些比较常用的段 ...