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时 ...
随机推荐
- CSS Sticky 其实很简单
为什么要写这篇文章 Sticky 也不是新知识点了,写这篇文章的原因是由于最近在实现效果的过程中,发现我对 Sticky 的理解有偏差,代码执行结果不如预期.决定写篇文章重新学习一次. 什么是 Sti ...
- mysql使用replace和on duplicate key update区别
实际业务使用中,有时候会遇到插入数据库,但是如果某个属性(比如:主键)存在,就做更新.通常有两种方式:1.replace into 2.on duplicate key update 但是在使用过程 ...
- python-pptx
python-pptx的使用首先需要了解几个基本概念: 1.引入python-pptx frompptximportpresentation # 实例化Presentation prs= ...
- Java默认文件目录
今天看到Ehcache中设置持久化的配置: <diskStore path="java.io.tmpdir" /> 好奇这个java.io.temdir是哪个目录,于是 ...
- 解决“Jquery的each里面return失效的问题”
参考文章:http://blog.csdn.net/coffeesmile/article/details/53349860 问题描述: 集中获取页面的一些元素,然后用each循环处理这些元素,如果其 ...
- Kali Linux又增加一个顶级域名kali.download
Kali Linux又增加一个顶级域名kali.download 现阶段,kali.download只提供软件包和镜像下载.大家可以把该域名作为备选软件源来使用.形式如下: deb http://k ...
- 基于Source Insight_Scan的C/C++静态代码检查工具安装说明
基于Source Insight_Scan的C/C++静态代码检查工具安装说明 本文链接:https://blog.csdn.net/M19930517/article/details/79977 ...
- Qt编写自定义控件69-代码行数统计
一.前言 代码行数统计主要用来统计项目中的所有文件的代码行数,其中包括空行.注释行.代码行,可以指定过滤拓展名,比如只想统计.cpp的文件,也可以指定文件或者指定目录进行统计.写完这个工具第一件事情就 ...
- RabbitMQ 入门教程(PHP版) 第一部分:Hello World
abbitMQ是一个消息代理.它的核心原理非常简单:接收和发送消息.你可以把它想像成一个邮局:你把信件放入邮箱,邮递员就会把信件投递到你的收件人处.在这个比喻中,RabbitMQ是一个邮箱.邮局.邮递 ...
- Error:java: Compilation failed: internal java compiler
errorInformation:java: javacTask: 源发行版 1.8 需要目标发行版 1.8 解决此类问题 检查自己的JDK是否一致 1 setting--------built ...