mysql数据库,数据表,数据的增删查改语句
查询mysql支持的引擎
show engines;
查询mysql支持的字符集
show character set;
设置mysql默认存储引擎
set default_storage_engine = innodb;
设置mysql默认字符集
set character set utf8;
查看mysql有多少数据库
show databases;
选择数据库
use `db_test`;
数据库的增
create database `db_test` character set utf8;
数据库的删
drop database `db_test`;
数据库的查
查建库sql语句
show create database `db_test`;
查数据库中有多少表
show tables from `db_test`;
数据库的改
改特定数据库的字符集
alter database `db_test` character set utf8;
改特定数据库的名字
暂时未知
数据表的增
create table `tb_test`(
`字段1` 类型和长度 可选的not null默认是null 可选的primary key 有主键之后才能auto_increment 可选的comment,
`字段2` 类型和长度 同上,
`其他字段...` 类型和长度 同上,
foreign key ( `本表除主键的字段` ) references `关联表`( `关联表的主键字段` ),
foreign key 同上
)default engine = innodb default character set = utf8;
数据表的删
drop table `tb_test`;
数据表的查
查看建表语句
show create table `tb_test`;
查看表结构
desc `tb_test`;
数据表的改
改特定数据表的存储引擎
alter table `tb_test` engine = innodb;
改特定数据表的字符集
alter table `tb_test` character set utf8;
改特定数据表的名字
alter table `tb_test` rename `tb_new_name`;
rename table `tb_test` to `tb_new_name`;
数据表字段的增
增加新字段
alter table `tb_test` add column `字段名` 字段类型和长度;
增加字段的主键标识
alter table `tb_test` add primary key (`tb_test的字段名`);
增加字段的外键标识
alter table `tb_test` add foreign key (`tb_test的字段名`) references `tb_other`(`tb_other的主键字段`);
数据表字段的删
删除字段本身
alter table `tb_test` drop `字段名`;
删除字段的主键标识
alter table `tb_test` drop primary key;
删除字段的外键标识
alter table `tb_test` drop foreign key `字段名`;
数据表字段的查
desc `tb_test`;
数据表字段的改
改字段名字
alter table `tb_test` change `字段新名` `字段旧名` 字段类型和长度;
改字段类型
alter table `tb_test` modify `字段名字` 字段类型和长度;
数据的增
insert into
`tb_test`
( `字段1`, `字段2`, `其他字段...` )
values
( '', '字符串', '2019-05-11 20:20:12' )
数据的删
delete from `tb_test` where where_condition;
数据的查
查询所有字段
select * from `tb_test`;
查询部分字段
select `字段1`, `字段2`, `字段其他...` from `tb_test`;
对查询出来的字段进行计算
select `字段1` * `字段2` from `tb_test`;
使用字段别名查询
select `字段1` as '字段1别名', `字段2` as '字段2别名' from `tb_test`;
消除重复的记录(行)
select distinct `字段1` from `tb_test`;
简单条件查
select * from `tb_test` where `字段1` > 1;
复合条件查
select * from `tb_test` where `字段1` > 1 and `字段2` < 2;
指定范围查询
与或非(and or not)
between and ( == 于大于等于小于等于)
select * from `tb_test` where 条件1 and 条件2;
select * from `tb_test` where 条件1 or 条件2;
select * from `tb_test` where `字段` not 条件;
select * from `tb_test` where `字段` not between 2 and 3;
指定集合查询
select * from `tb_test` where in ( '值1', '值2', '值3', '值4' );
select * from `tb_test` where not in ( '值1', '值2', '值3', '值4' );
查询某个字段为空
select * from `tb_test` where `字段` is null;
模糊查询
select * from `tb_test` where `字段` like '值1_';
select * from `tb_test` where `字段` like '值1%';
select * from `tb_test` where `字段` like '%值1%';
select * from `tb_test` where `字段` like '%值1';
查询排序
select * from `tb_test` order by `字段`;
select * from `tb_test` order by `字段` asc;
select * from `tb_test` order by `字段` desc;
select * from `tb_test` order by `字段1` asc, `字段2` desc;
查询条数限制
select * from `tb_test` limit 10;
select * from `tb_test` limit 0, 10;
聚合函数查询
select max( * ) from `tb_test`;
select min( * ) from `tb_test`;
select count( * ) from `tb_test`;
select sum( * ) from `tb_test`;
select avg( * ) from `tb_test`;
分组查询
//简单分组
select * from `tb_test` group by `字段1`;
//分组筛选
select * from `tb_test` group by `字段1` having `字段2` = 1;
//分组排序
select * from `tb_test` group by `字段1` order by `字段2` desc;
//统计功能分组查询
select group_concat( `字段1` ) from `tb_test` group by `字段1` order by `字段2` desc;
//多分组查询
select * from `tb_test` group by `字段1`, `字段2`;
多表查询
内连接
//内连接两个表
select 表1.字段, 表2.字段 from 表1
inner join 表2 on 表1.字段 = 表2.字段;
//或
select 表1.字段, 表2.字段 from 表2
inner join 表1 on 表1.字段 = 表2.字段;
//或
select 表1.字段, 表2.字段 from 表1, 表2
where 表1.字段 = 表2.字段;
//内连接三个表
select 表1.字段, 表2.字段, 表3.字段 from 表1
inner join 表2 on 表1.字段 = 表2.字段
inner join 表3 on 表1.字段 = 表3.字段
//或
select 表1.字段, 表2.字段, 表3.字段 from 表1
inner join 表2 on 表1.字段 = 表2.字段
inner join 表3 on 表2.字段 = 表3.字段
//或
select 表1.字段, 表2.字段, 表3.字段 from 表1
where 表1.字段 = 表2.字段 and 表1.字段 = 表3.字段;
//或
select 表1.字段, 表2.字段, 表3.字段 from 表1
where 表1.字段 = 表2.字段 and 表2.字段 = 表3.字段;
外连接
左外连接实心
select `连接表1.字段1`, `连接表2.字段1` from `连接表1` left join `连接表2` on `连接表1.外键字段` = `连接表2.主键字段`;
select `连接表1.字段1`, `连接表2.字段1` from `连接表2` right join `连接表1` on `连接表1.外键字段` = `连接表2.主键字段`;
左外连接空心
select `连接表1.字段1`, `连接表2.字段1` from `连接表1` left join `连接表2` on `连接表1.外键字段` = `连接表2.主键字段` where `连接表2.主键字段` is null;
select `连接表1.字段1`, `连接表2.字段1` from `连接表2` right join `连接表1` on `连接表1.外键字段` = `连接表2.主键字段` where `连接表2.主键字段` is null;
右外连接实心
select `连接表1.字段1`, `连接表2.字段1` from `连接表1` right join `连接表2` on `连接表1.外键字段` = `连接表2.主键字段`;
select `连接表1.字段1`, `连接表2.字段1` from `连接表2` left join `连接表1` on `连接表1.外键字段` = `连接表2.主键字段`;
右外连接空心
select `连接表1.字段1`, `连接表2.字段1` from `连接表1` right join `连接表2` on `连接表1.外键字段` = `连接表2.主键字段` where `连接表1.外键字段` is null;
select `连接表1.字段1`, `连接表2.字段1` from `连接表2` left join `连接表1` on `连接表1.外键字段` = `连接表2.主键字段` where `连接表1.外键字段` is null;
数据的改
update `tb_test` set `字段1` = 值 , `字段2`= 值 where where_condition;
mysql数据库,数据表,数据的增删查改语句的更多相关文章
- mysql中数据表记录的增删查改(1)
数据记录的增删改查 insert into `数据表名称` (`字段名称`, ...) values ('1', ...); delete from `数据表名称` where 子句; update ...
- mysql中数据表记录的增删查改(2)
select `数据表.字段1`, group_concat(`数据表.字段2`) from `数据表` group by `数据表.字段1` order by `数据表.字段1` desc; sel ...
- mysql数据库技术1——基本的增删查改的sql语句
1.数据库语言的分类 DDL:数据库定义语言 data Definition language 用于创建.修改.和删除数据库内的数据结构,如: 1:创建和删除数据库(CREATE DATABASE | ...
- MySQL数据库之表的增删改查
目录 MySQL数据库之表的增删改查 1 引言 2 创建表 3 删除表 4 修改表 5 查看表 6 复制表 MySQL数据库之表的增删改查 1 引言 1.MySQL数据库中,数据库database就是 ...
- SSH框架的多表查询和增删查改 (方法一)上
原创作品,允许转载,转载时请务必标明作者信息和声明本文章==> http://www.cnblogs.com/zhu520/p/7772823.html 因为最近在做Android 练习的 ...
- SSH框架的多表查询和增删查改 (方法一)中
原创作品,允许转载,转载时请务必标明作者信息和声明本文章==>http://www.cnblogs.com/zhu520/p/7774144.html 这边文章是接的刚刚前一遍的基础上敲的 ...
- SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码)
SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码) 概述: 表由行和列组成,每个表都必须有个表名. SQL CREATE TABLE 语法 CREATE TABLE tabl ...
- Mysql数据库和表的增删改查以及数据备份&恢复
数据库 查看所有数据库 show databases; 使用数据库 use 数据库名; 查看当前使用的数据库 select database(); 创建数据库 create database 数据库名 ...
- MySQL数据库2表的增删改查
目录 一.数据表(文件): 1.1增 1.2查看表内数据 1.3改 1.4删除列表 1.5查看库内列表及表结构 1.6复制表结构 二.列类型:(*********) 2.1数字 2.2字符串 2.3时 ...
随机推荐
- 2019UNCTF竞技赛部分writeup
Reverse unctf_babyre2 这题flag分为两部分,第一部分每四个字符一组打包成int后,每次把四个int传入函数,后三个参数异或后先以每位为索引查表,将新数据进行循环移位.异或,将结 ...
- 【深度学习】关于Adam
版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_31866177/articl ...
- 做动画animation--matplotlib--python2和3通用代码
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/weixin_42053726/artic ...
- UE4虚幻引擎独立游戏制作教程 UE4编程教学 虚幻引擎4
非常好的一套UE4入门教学课程,语言诙谐幽默,并且是中文语音中文语音中文语音 赠送[精通Unreal引擎技术——关卡设计艺术]PDF版 目录 FLV格式,大小5G,中文语音 扫码时备注或说明中留下邮箱 ...
- 第2课第1节_Java面向对象编程_类的引入_P【学习笔记】
摘要:韦东山android视频学习笔记 1. 面向对象编程的引入,我们先写一个简单的程序输出张三,李四的名字.代码如下,假如,现在我们要在名字前面添加籍贯广东,那样岂不是每个printf语句都得修改添 ...
- Gis基础知识,坐标 投影
1. 大地测量学 (Geodesy) 大地测量学是一门量测和描绘地球表面的学科,也包括确定地球重力场和海底地形. 1.1 大地水准面 (geoid) 大地水准面是海洋表面在排除风力.潮汐等其它影响,只 ...
- Mac 命令行查看自己的公网IP
Mac 查看本机公网IP 命令 curl ifconfig.me 如果想更好看一点 curl ipinfo.io/json 还可以用wget wget http://ipecho.net/plain ...
- pyqt5界面
用pyqt5做了一个小程序,保留一下这个固定格式: import sys from PyQt5 import uic, QtGui from PyQt5.QtGui import QWindow fr ...
- [原][GIS]ARCGIS投影坐标系转换
ARCGIS投影坐标转换步骤: 1.在ARCGIS中加入需要转换投影坐标的数据 2.打开“工具组”中的 “数据管理工具组”(Data Management Tools) 3.打开“数据管理工具组”中的 ...
- 时序数据库技术体系 – 初识InfluxDB(原理)
原贴地址:http://hbasefly.com/2017/12/08/influxdb-1/?qytefg=c4ft23 在上篇文章<时序数据库体系技术 – 时序数据存储模型设计>中笔者 ...