常见SQL语句杂谈(笔记)
SQL语句(总结,完整的select语句)
select distinct * from 表名 where ...group by ... having ...order by ...
limit start,count 执行顺序为:
from 表名
where ...
group by ...
select distinct *
having ...
order by ...
limit start,count
实际使用中,只是语句中某些部分的组合,而不是全部
创建表:
DROP TABLE if EXISTS students;
CREATE table students(
studentNO int UNSIGNED PRIMARY key auto_increment,
name VARCHAR(20),
sex VARCHAR(1),
hometown VARCHAR(20),
age INT UNSIGNED,
class VARCHAR(20),
card VARCHAR(20)
)CHARSET=utf8
1、子查询(查询结果作为where条件)
SELECT AVG(age) from students;
SELECT * FROM students WHERE age > (SELECT AVG(age) from students);
2、自关联查询:将一张表分解成两张表自关联 (一对多PS:省对应多个市-市对应多个县...)
SELECT * from areas AS p INNER JOIN areas AS c on c.pid = p.aid WHERE = '条件名';
命令行客户端:
1、进入MYSQL的bin目录
2、连接 mysql mysql -u root -p
查看所有数据库:
show databases;
使用数据库:
use 数据库名
查看当前使用的数据库:
select database();
创建数据库:
create database 数据库名 charset = utf8;
删除数据库
drop database 数据库名;
数据表中命令的操作:
修改表-添加字段
alter table 表名 add 列名 类型;
查看当前数据库中所有表
show tables;
查看表结构
desc 表名;
查看表的创建语句
show create table 表名;
mysql高级操作: 事务 -- 原子性 、持久性、隔离性、一致性
开启事务,命令如下:
开始事务后执行修改命令,变更会维护到本地缓存中,而不是维护到物理表中:begin;
提交事务,命令如下:
将缓存中的数据变更成维护到物理表中 commit;
回滚事务,命令如下:
放弃缓存中变更的数据 rollback;
修改数据的命令会触发事务,包括:insert、update、delete
最新文章
- elk系列7之通过grok分析apache日志
- 未添加document.ready产生的BUG
- Unity3D大风暴之入门篇(海量教学视频版)
- 2015年12月01日 GitHub入门学习(三)GitHub创建仓库
- 数据结构之DFS与BFS实现
- struts2 javaweb 过滤器、监听器 拦截器 原理
- 地球上最大的PHP站点 后端技术解密
- OOP作业
- bootstrap插件之Carousel
- POJ 3668 Game of Lines (暴力,判重)
- hadoop2.2.0安装
- Linux学习之十三、快捷键与通配符、数据流重导向
- 比最差的API(ETW)更差的API(LTTng)是如何炼成的, 谈如何写一个好的接口
- Android-第二天(2)
- java网页爬数据获取class中的空格
- LCA算法解析-Tarjan&;倍增&;RMQ
- 如何简单地理解Python中的if __name__ == '__main__'(https://blog.csdn.net/yjk13703623757/article/details/77918633)
- BZOJ1012最大数 [JSOI2008] 单调栈+二分
- Microsoft.Web.Administration操作IIS7时的权限设置
- nginx 备忘