17mysql2█▓
一、数据库的查询用法
1.1数据准备
create table exam(id int primary key auto_increment,name varchar(20) not null,chinese double,math double,english double);insert into exam values(null,'关羽',85,76,60);insert into exam values(null,'张飞',70,75,70);insert into exam values(null,'赵云',90,65,95);insert into exam values(null,'刘备',97,50,50);insert into exam values(null,'曹操',90,89,80);insert into exam values(null,'司马懿',90,67,65);insert into exam values(null,'刘阿斗');
1.2 数据查询
文件结构:名字:语法:
比较运算符 |
> <<= >= =<> |
大于、小于、大于/小于等于、不等于 |
between 1 and 10 |
显示某一区间的值:1—10之间 |
|
in(1,2,3) |
显示在in列表中的值:1、2、3任意一个 |
|
Like ‘张_’ Like ‘张%’ |
模糊查询:%表示零或任意多个字符,_表示一个字符. 例子1:张三丰 like ‘张%’ 例子2:张三 like ‘张_’ |
|
is null、is not null |
是否为空 |
|
逻辑运算符 |
and&& |
多个条件同时成立 |
or|| |
多个条件任意一个成立 |
|
not! |
不成立,例如:where |

二、数据备份和恢复
语法:mysqldump -u 用户名 -p 数据库名
> 磁盘SQL文件路径
█▓ █▓ █▓ 2.恢复
恢复方式1:
三、外键约束
添加外键需要注意的问题
l 如果从表要去添加一个外键约束。要求主表被引用的字段是主键或者唯一的。通常使用主键。
l 如果要删除主表中的数据。要求在从表中这个数据,要没有被引用,才可以去删除。
l 如果要向从表中去添加数据。要求在主表中,要有对应的数据。才可以去添加。
l 如果要删除表。要先删除从表。然后去删除主表。
l 新建表的时候。需要先去创建主表,然后去创建从表。
作用:保持数据的完整性,和有效性。
/*创建部门表*/
create table dept(
id int
primary key auto_increment,
name
varchar(20)
);
/*创建员工表*/
create
table employee(
id int primary key auto_increment,
name varchar(20),
age int ,
salary double,
dept_id int,
foreign key
(dept_id) references dept(id)
);
库的操作
创建库:create database 库名 character set 编码表;
删除库:drop database 库名;
查询库:show databases;
查看库的编码表:show create database 库名;
更改库:use 库名;
查看当前正在使用的库:select database();
修改库的编码表:alter database 库名 character set 编码表;
表本身的操作
创建表:create table 表名( 列名 列的类型(长度) 类的约束 ,列名 列的类型(长度) 类的约束...... );
删除表:drop table 表名;
查询表:show tables;
查看表的结构:desc 表名;
查看表的编码表:show create table 表名;
修改表:alter table 表名 增/删/改 列名
列的类型(长度) 约束;
add/drop/change/modify
修改表名:rename table 旧表名 to 新表名;
表中数据的操作
增:insert into 表名(列名) values(值);
删:delete from 表名 where 条件; truncate
改:update 表名 set 列名=值 ,列名=值 where 条件;
查:select 列名 as 别名 ,列名 as 别名… from 表名 where 条件 group by 列名 having 条件 order by 排序.
查询排重:select distinct 列名 from 表名 where 条件;
聚合函数:
count 统计个数、sum求和、avg 平均值、max、min
在使用这几个函数进行数据的统计分析时,有时需要对数据表中的列进行数据的分组处理。group by
分组 group by :
排序:order by 列名
asc | desc;
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">
17mysql2█▓的更多相关文章
随机推荐
- AI 支持向量机
支持向量机(Support Vector Machine,简称SVM),属于监督学习. 核技巧(kernel trick) 名字很吓人,乍一听完全不懂什么意思,但其实它的名字是很有意义的. 1)首先, ...
- AI 隐马尔科夫模型
隐马尔科夫模型(Hidden Markov Model,简称HMM),
- MySQL 基础四 存储过程
-- 定义存储过程 DELIMITER // CREATE PROCEDURE query_student2() BEGIN SELECT * FROM student; END // DELIMIT ...
- C++STL二维vector指定位置排序
自己一直用vector 二维的存储变量 有时候需要进行排序 在此 为记录一下方法 废话少说直接上代码 #include <QCoreApplication> #include <io ...
- C++ 预处理器
直接上代码 1.#define 预处理 #include <iostream> using namespace std; #define PI 3.14159 int main () { ...
- 《大道至简》第一章j愚公移山ava伪代码
<大道至简>第一章,将编程比作了愚公移山,完美的诠释了编程的整个过程.在两千年前的寓言中,愚公集项目组织者.团队经理.编程人员.技术分析师等众多角色于一身.首先是原始需求的产生:“惩山北之 ...
- curl命令行
curl命令行--强大的工具.通过各种参数,支持各种方式. 写几个常用的命令: 请求到的网站html curl http://www.baidu.com 比如想在命令行上请求一个接口,post过去几个 ...
- Java并发——线程中断学习
1. 使用interrupt()中断线程 当一个线程运行时,另一个线程可以调用对应的Thread对象的interrupt()方法来中断它,该方法只是在目标线程中设置一个标志,表示它已经被中断,并立即返 ...
- Linux中2>&1使用
转:2>&1使用 一 相关知识 1)默认地,标准的输入为键盘,但是也可以来自文件或管道(pipe |).2)默认地,标准的输出为终端(terminal),但是也可以重定向到文件,管道或后 ...
- pycharm2019注册码一键实时获取,永久有效!
pycharm2019专业版激活码 56ZS5PQ1RF-eyJsaWNlbnNlSWQiOiI1NlpTNVBRMVJGIiwibGljZW5zZWVOYW1lIjoi5q2j54mI5o6I5p2 ...