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 ...
随机推荐
- tomcat禁用PUT,DELETE等一些不必要的HTTP方法
一.背景 公司进行安全整改, 技术要求:系统软件所需支撑的WEB容器环境应禁止除GET和POST外其他HTTP(S)方法. 提供凭证:建议在不影响业务的前提下,禁用PUT.DELETE.HEAD.OP ...
- 第二十一篇 -- QTimer实现秒表功能
效果图: 程序一开始就开始计时,当完成了相关功能(在线程中完成)之后,就触发停止信号,停止定时器. time.py #!/usr/bin/env python # _*_ coding: UTF-8 ...
- 【用例】编写App测试用例的关注点
编写App测试用例的关注点 如何做到测试用例的百分百覆盖一直是测试用例编写过程中的难点,首先在测试时我们经常会遇见一些常见的bug,那么我们可以在编写测试用例时考虑到这些点. 一:关于业务逻辑 ...
- FactoryBean简介以及Mybatis-Spring应用
一.BeanFactory和FactoryBean区别? BeanFactory是工厂类,提供了获取和检索Bean的接口.它代表着Spring的IoC容器,负责Bean实例化以及管理Bean之间的依赖 ...
- synchronized 加锁 this 和 class 的区别!
synchronized 是 Java 语言中处理并发问题的一种常用手段,它也被我们亲切的称之为"Java 内置锁",由此可见其地位之高.然而 synchronized 却有着多种 ...
- 关于C语言中的unsigned
在C语言中,对unsigned做出(unsigned int)i>=0 判断,将会得到一个永真值. int i; for(i=10;i-sizeof(int)>=0;i--){ print ...
- Arp欺骗和DNS投毒
中间人攻击 ARP缓存攻击 ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的网络层,负责将某个IP地址解析成对应的MAC地址.简单来说,就 ...
- C语言运算符(关系运算符)+(逻辑运算符)
下表显示了 C 语言支持的所有关系运算符.假设变量 A 的值为 10,变量 B 的值为 20,则: 实列: 1 #include <stdio.h> 2 3 int main() 4 { ...
- 【LeetCode】316. 去除重复字母
316. 去除重复字母 知识点:栈:单调 题目描述 给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次.需保证 返回结果的字典序最小(要求不能打乱其他字符的相对位置). 示例 输 ...
- springboot2集成log4j2
pom <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http:// ...