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时 ...
随机推荐
- python 嵌套字典取值增强版
def getdictvalue(d,code): result=[] if isinstance(d, dict) : try: value = d[code] result.append(valu ...
- locust使用命令
locust -f locust_demo.py --logfile=locusfile.log
- Java 面向对象(十六)
多线程 一.并发与并行 并发:指两个或多个事件在同一个时间段内发生. 并行:指两个或多个事件在同一时刻发生(同时发生). 在操作系统中,安装了多个程序,并发指的是在一段时间内宏观上有多个程序同时运行, ...
- pypy
#coding:utf-8 import requests,codecs import json import re import os, shutil import urllib.request, ...
- 肿瘤免疫疗法 | 细胞治疗和PD1/PDL1 | Tumor immunotherapy | cell therapy
人类肿瘤治疗史上的里程碑无疑一定有一座是肿瘤免疫疗法的. 而肿瘤免疫疗法的主要两大领域,细胞治疗以及以PD1/PDL1为代表的免疫检查点抑制剂都在飞速发展. 目前,已经有5种抗PD1/PDL1抗体药物 ...
- Java对象为啥要实现Serializable接口
Serializable接口概述 Serializable是java.io包中定义的.用于实现Java类的序列化操作而提供的一个语义级别的接口.Serializable序列化接口没有任何方法或者字段, ...
- 001 centos7中的安装
以前学习过centos6.4的安装使用,然后新使用centos7,发现有些修改配置变化了,记录一下. 1.修改主机名 查看主机名: 修改: 二:ip的固定 1.参考文章 https://www.jia ...
- naxsi-waf-with-ui :dockerfile
scollazo/naxsi-waf-with-ui Dockerfile - Docker Hubhttps://hub.docker.com/r/scollazo/naxsi-waf-with-u ...
- Redis For Windows安装及密码
启动要先开启一个控制台作为服务端,启动服务,然后在重新打开一个控制台,连接服务进行操作. redis-server.exe redis.conf 重新打开一个控制台,刚开始连接服务,因为初始没有密码, ...
- Oracle数据库启动报错,找不到数据文件(ORA-01157和ORA-01110)
数据库报了ORA-01157和ORA-01110错误,提示找不到一个数据文件. 1.启动数据库报错 在启动数据库过程中,报了ORA-01157和ORA-01110错误,提示找不到数据文件. SQL&g ...