mysql 10658_数据库mysql语句 - pymysql,sqlite3,MySQLdb,mysql.connector 第三方库常用sql语句...
登录 Mysql
mysql -u 用户名 -p
密码
显示数据库
show databases;
使用数据库
use 数据库名;
显示可用表
show tables;
查询其他表
show tables from 其他表名;
查看数据库
select database();
创建表
create table 表名(
字段名 类型,
字段名 类型(长度)
);
查看表结构
desc 表名;
插入数据
insert into 表名(字段名,...,字段名) values (值1,...,值n);
修改表的数据
update 表名 set 字段名=值 where 字段名=值;
删除表中数据
delete from 表名 where 字段名=值;
查看版本信息
select version();
查询常量select 数字;
查询字符串常量select '字符串';
查询表达式select 运算式;
别名select 字段/表达式 as '别名';
select 字段 空格 '别名';
查询时去掉重复的值select distinct 字段 from 表名;
连接两列的值select concat(列名1,...,列名n) from 表名;
查看是否有字段的值为空select ifnull(列名,如果为空应该修改为什么值) from 表名;
查询某一字段的值在某一区间内select distinct concat(列名1,...,列名n) from 表名 where 条件;
模糊查询select 字段 from 表 where 字段 like '值%';% 可以匹配0或多个, _ 可以匹配一个字符
将字符转义,如查询带有_的值select 字段 from 表名 where 字段 like '_\_';
使用 \ 进行转义
转义时,使用自定义符号实现select 字段 from 表名 where 字段 like '_自定义符号_' escape '自定义符号';
将自定义符号后面的进行转义
查询在某一区间内的值select 字段 from 表名 where 字段 between 小的值 and大的值;
取值包括小的值和大的值
查询某一个值是否在该字段中select 字段 from 表名 where 值 in (字段);
查询某一个值是否为 null
select 字段 from 表名 where 字段 is null;select 字段 from 表名 where 字段 is not null;
判断字段的指定值select 字段 from 表名 where 字段 <=>值;<=>安全等于select 字段 from 表名 where 字段 = 值;
对查询的数据进行排序
默认升序 asc
可以添加 where 语句进行判断
查询查看字段的长度select length(字段) 别名 from 表名 order by 别名;
按照多个字段进行排序select * from 表名 order by 字段1 排序方式,字段2 排序方式;
字符函数select length(实参);
查看字符长度
字符变为大写
select upper(值);
字符变为小写select lower(值);
字符拼接select concat(值1,...,值n);
查询字符的某一小段值select substr(值,起始位置,长度);
select substr(值,起始位置);
索引从 1 开始
查询某个值在字符中的第一个索引位置select instr(字符,值);
没有值,则返回 0
查询去掉两边的空格或者其他符号selecttrim(值);
默认去掉空格select trim('符号' from字符);
去掉两边的符号
在左侧填充符号select lpad(字符,总长度,符号);
在右侧填充符号select rpad(字符,总长度,符号);
将字符替换成新的字符select replace(字符,需要替换的字符,新的字符);
数学函数
四舍五入select round(值);
四舍五入到整数select round(值,位);
四舍五入到小数点后几位
向上取整select ceil(值);
向下取整select floor(值);
截断数字,不进行修改数值select truncate(值,位);
数值取模,取余select mod(值1,值2);
日期函数
查询现在时间select now();
查询当前日期select curdate();
查询当前时间,不带有日期select curtime();
查询当前年select year(now());
参数还可以是指定的日期格式select year('年-月-日');
查询当前月份select month(now());
显示月份名字select monthname(now());
字符转换为日期select str_to_date(字符,'时间格式');select str_to_date('年-月-日','%Y-%m-%d');
将日期转换为字符select date_format(日期,时间格式);
其他函数
查看当前数据库select database();
查看当前用户select user();
判断语句select if (条件,条件成立的值,条件不成立的值);
case多分支条件选择select字段,字段,case字段when 值 then表达式
...when 值 then表达式else表达式end
from表名where 条件;
case后不指定字段select字段,case
when 条件 then值
...when 条件 then值else值end as别名from 表名;
分组函数
求和select sum(字段) from 表名;
求平均值select avg(字段) from 表名;
求最大值select max(字段) from 表名;
求最小值select min(字段) from 表名;
求个数select count(字段) from 表名;
将 distinct和 分组函数一起使用select avg(distinct 字段) from 表名;
统计行数,只要有一个字段不为null,就加1select count(*) from 表名;
查看两个日期之间相差的天数select datediff(字符1,字符2);
分组查询select 字段 from表名where条件group by字段order by 字段;
查看字段不为 null的,进行分组select max(字段),字段 from 表名 where 字段 is not null group by 字段;
在使用 group by之后,对分组进行筛选select分组函数(字段),字段from表名where条件group by字段having 分组函数(字段) 条件;
group by 和 having 后支持别名
创建好的两个表如下所示
两个表连接查询select 表1字段,表2字段 from 表1,表2 where 表1.字段 比较符号 表2.字段;
可以对表起别名
from 表名 as 别名
对两个表使用模糊查询
在 where 条件下 加入 like
对两个表使用 分组查询并排序
group by 进行分组
order by 进行排序 默认升序
自连接
设置别名来进行区分,将一张表当做两张表
生成随机数select rand();
MD5 加密select md5(字符);
两个表的连接方式
inner 内连接
left 左外连接
right 右外连接
cross 交叉连接
进行分组筛选
查看连接时存在的空值select 字段1,...,字段2 from 表名1 别名 连接方式 join 表名2 on 条件
where 字段 is null;
查询时应用左外连接,判断是否为空
子查询
any 表示任意一个
all 全部
not in 不在子查询中
=any 效果
子查询中存放两个字段
子查询在 select 后
select 查询后放 select 查询
子查询放在 from 中
子查询放到 exists 后面 , 相关子查询
查看是否具有数据
分页查询select字段from表名 别名
连接方式join表 别名on连接条件where条件group by分组字段having分组筛选order by排序的字段
limit offset,size;
offset 起始索引,从0开始
size 个数
省略 offset
语句顺序select 查询字段 /别名.字段from 表名 as别名
连接类型[inner , left , right] join表名 别名on连接条件where条件group by字段having条件order by条件
limit 起始索引,条数;
联合查询 union
select语句union
select 语句
使用 union all 不去掉查询的结果中的重复项
插入语句insert into 表名(字段) values(值);
空值null
插入时,不指定字段名称
注:顺序要和表中一致
第二种插入方式insert into表名set 字段=值,字段=值;
修改单表记录update 表名 set 字段=值 where 条件;
修改多个字段值
修改多表update表名 别名join表名 别名on连接条件set 字段 =值where 条件;
删除语句delete from 表名 where 条件;
删除语句delete表1别名,表2别名from表1 别名
连接方式join表2 别名on连接条件where 筛选条件;
删除全部信息,不可以加wheretruncate table 表名;
更改数据库的字符集alter database 数据库名 character set 字符集;
删除数据库drop database if exists 数据库名;
创建表create table表名(
字段 字段类型,
字段 字段类型(长度),
字段 字段类型(长度) 约束,
)
显示表结构desc 数据表;
修改表
修改列名alter table 表名 change column 旧列名 新列名 字段类型 ;
修改列的类型alter table 表名 modify column 列名 新类型;
添加列alter table 数据表 add column 字段名 字段类型;
删除列alter table 表名 drop column 列名;
修改表名alter table 表名 rename to 新名称;
删除表drop table 表名;
复制表的结构create table 表名 like 表名;
复制表的结构和数据create table 表名 select * from 表名;
创建带有约束的表primary key主键not null非空check检查输入的值unique唯一default设置默认值
外键: 字段 类型references 表名(字段)
添加表级约束create table表名(
字段 字段类型,
字段 字段类型(最大长度),constraint名称 约束(字段),constraint 名称 foreign key(字段) references表名(字段)
);
添加非空约束alter table 表名 modify column 字段 字段类型 约束 ;
查看 mysql 支持的存储引擎
show engines;
事务的ACID
A 原子性 , C 一致性 , I 隔离性 , D 持久性
事务
开启事务set autocommit = 0;
starttransaction;
编写一组事务语句update account set 字段=值 where条件;
...select,insert,update,delete...update account set 字段=值 where条件;
结束事务
提交commit;
回滚rollback;
查看当前默认的隔离级别,mysql 8 版本select @@transaction_isolation;
设置最低的隔离级别set session transaction isolation level read uncommitted;
设置隔离级别为 读提交set session transaction isolation level read committed;
设置为可重复读set session transaction isolation level repeatable read;
2021-01-07
mysql 10658_数据库mysql语句 - pymysql,sqlite3,MySQLdb,mysql.connector 第三方库常用sql语句...相关推荐
- mysql查询语句题目_MySQL经典练习题及答案,常用SQL语句练习50题
--1.查询"01"课程比"02"课程成绩高的学生的信息及课程分数 select a.* ,b.s_score as 01_score,c.s_score as ...
- mysql备份数据库语句6_13.4 MySQL用户管理;13.5 常用sql语句;13.6 MySQL数据库备份恢复...
扩展 : SQL语句教程 什么是事务?事务的特性有哪些? 根据binlog恢复指定时间段的数据 mysql字符集调整 使用xtrabackup备份innodb引擎的数据库 innobackupex ...
- mysql用户管理,常用sql语句,mysql数据库备份恢复
2019独角兽企业重金招聘Python工程师标准>>> mysql用户管理 grant all on . to 'user1' identified by 'passwd'; gra ...
- MySQL用户管理、常用sql语句、数据库备份
13.4 MySQL用户管理 创建用户并授权 指定登录IP [root@centos-01linux ~]# mysql -uroot -p Enter password: Welcome to th ...
- 55:Mysql用户管理|常用sql语句|mysql数据库备份恢复
2019独角兽企业重金招聘Python工程师标准>>> 1.Mysql用户管理: 场景,为了安全,新建的站点,创建新的用户,或者给已有用户授权,对某个库或者某个表有权限: 语法: g ...
- MySQL用户管理、常用SQL语句、MySQL数据库备份恢复
mysql用户管理 1.创建一个普通用户并授权 [root@gary-tao ~]# mysql -uroot -p'szyino-123' Warning: Using a password on ...
- 13.4 MySQL用户管理;13.5 常用sql语句;13.6 MySQL数据库备份恢复
扩展 : SQL语句教程 http://www.runoob.com/sql/sql-tutorial.html 什么是事务?事务的特性有哪些? http://blog.csdn.net/yenang ...
- 52次课(mysql用户管理、常用sql语句、 mysql数据库备份恢复)
MySQL创建用户以及授权 默认用户是root用户,不可能所有人员都用root用户,创建用户防止误删除,因为mysql里边有多个库每个库里有很多表,所以需要给单独的用户做一些授权我只需要它对某一个数据 ...
- 13.4 mysql用户管理 13.5 常用sql语句 13.6 mysql数据库备份恢复
mysql用户管理 1.创建一个普通用户并授权 [root@gary-tao ~]# mysql -uroot -p'szyino-123' Warning: Using a password on ...
- MySQL(用户管理,常用sql语句,数据库备份恢复,MySQL调优,恢复误操作数据)...
一.MySQL用户管理. 一个MySQL数据库里可以跑多个库,总不能给所有人的程序员root用户,则可以给他们单独的用户访问数据库. 创建用户:(grant all on *.* to 'user1' ...
最新文章
- 头条小视频和西瓜视频signature签名算法
- 您现在只需免费与相机捆绑即可购买一个PSVR
- java面试精典问答
- pyecharts第二节、饼图
- 上手测试GaussDB(for Redis) 和开源 Redis,只为推荐质优价廉的Redis
- 杭电1210 Eddy's 洗牌问题
- python中的yield使用详解
- python接口自动化(二十)--token登录(详解)
- 【毕业答辩】别小看毕业答辩PPT,它和你的论文一样重要
- 斯坦福大学深度学习公开课cs231n学习笔记(2)线性分类器及最优化
- 企业服务总线 ESB 介绍和用例
- c语言实现校园疫情防控系统
- vue2使用element UI中Descriptions组件的遍历问题
- nodejs实现读取本地目录生成文件树
- android统计app使用时间段,GitHub - yaozs/UseTimeStatistic: Android 系统中统计各个app的使用时长以及使用次数...
- 什么品牌的蓝牙耳机通话音质最好?通话音质好的蓝牙耳机
- 配置静态NAT和配置动态NAT
- 小红书api_【实习精选】oppo、小红书等名企实习汇总(96)
- android 脚本swipe,移动端滑动插件Swipe教程
- ArcGIS教程:填挖方的工作原理
热门文章
- Django学习-19-缓存
- MarioTCP, take it..
- DHCP详细工作过程(转)
- perl 脚本学习-----两个文件排序之后输入到一个文件
- 运维之Linux秋招重点(根据面经和常见笔试题总结,持续更新)
- HDOJ-1002 A + B Problem II C语言
- laravel 的用户认证
- Pyhton网络爬虫实例_豆瓣电影排行榜_Xpath方法爬取
- 求助:使用foreach函数获取到后台数据时未在表格上渲染的问题
- 腾讯云与同方全球人寿签署战略合作 “云+保险”合作伙伴队伍再壮大