mysql高级之子查询,多表查询,外连接,集合操作,内部函数与数据控制_月隐学python第24课
目录
⼀、⾼级
1.1 ⼦查询
1.2 多表查询
1.3 外连接
1.4 集合操作
1.5 内部函数
⼆、数据控制
2.1 事务
2.2 授权管理
⼀、⾼级
1.1 ⼦查询
- ⼦查询嵌⼊到其他查询语句中查询语句,⼦查询只能出现在from, where、having中
- ⼦查询不要⽤select *,exists除外
select title from forum where uid in (select id from php_user where name = '王坤');select * from blog_article where cid in(select cid from blog_category where name='心情');select * from (select uid,username,gender from blog_user where gender='男') as user;
1.2 多表查询
- 多表连接必须要有连接条件,否则结果没有意义
- 多表连接有两种写法:隐式(标准sql)和显式内连接
- 隐式(标准sql)连接 : 连接条件写到where字句中
select title,content,name,publish_time
-> from user u,forum f #给表起⼀个别名,⽅便书写
-> where u.id = f.uid; 在where写链接条件select title,content,name,publish_time
-> from user u,forum f
-> where u.id = f.uid and name='王琨';select a.username,b.name ,c.title
-> from bbs_user a,bbs_category b,bbs_forum c
-> where b.cid = c.cid and c.uid = a.uid;
- 显示内连接(inner join)
- 表的⾃身连接
select * from areainfo a,areainfo b where a.pid= b.code and a.name='青河县';
1.3 外连接
两张表关联查询时,根据以那种表为主可以分为左外连接和右外连接
- 左外连接
以左表为主,如果右边的表⾥没有匹配的记录,则添加⼀个万能记录(各个字段都为null)与之连接
- 右外连接(right join)
以右表为主,如果左边的表里没有匹配记录,则增加一个万能记录与之连接
1.4 集合操作
可以使⽤union将两个查询结果合并, mysql只⽀持并,不⽀持差和交
- 两个结果集中字段数⼀样,对应字段类型兼容
- ⾃动去除重复记录,不去除重复记录可以⽤ union all
- order by 放到最后
1.5 内部函数
- 字符串函数
- ⽇期函数
select DATE_FORMAT(now(),'%Y- %m-%d %H:%i:%s');
- 数学函数
- 其它函数
⼆、数据控制
2.1 事务
- 事务把⼀组操作看做⼀个整体,要不都操作成功,要不都操作失败 。 (ACID)
- 表的数据库引擎必须是innodb, innodb⽀持事物, myisam不⽀持事务
- 修改表引擎: alter table 表名 engine = innodb
-- 查询是否为⾃动提交
select @@autocommit #(1为⾃动提交 0为⼿动提交)
-- 关闭⾃动提交
set autocommit = 0
start transaction /begin
-- ⼀组操作
commit/rollback
commit #提交 会把数据写到硬盘
rollback #回滚 撤销操作 撤销从begin到这一条命令之间的操作
2.2 授权管理
- 创建⽤户
create user '⽤户名'@'服务器地址' identified by '密码'
- 删除⽤户
drop user '⽤户名'@'服务器地址'
修改密码
- 刷新
flush privileges
mysql高级之子查询,多表查询,外连接,集合操作,内部函数与数据控制_月隐学python第24课相关推荐
- mysql练习_创建库与列表、增加列表信息、列表查询(包含多列表查询)_月隐学python第23课
目录 一 .题目与设计 二 .运行结果 一 .题目与设计 SHOW DATABASES; drop DATABASE student;-- **********创建库**************** ...
- mysql基础_月隐学python第22课
目录 ⼀.数据库基本概念 常⻅的数据库: MySQL简介 mysql的安装 linux下 windows下安装 ⼆. SQL 三.操作数据库 四.数据库表 例子: 五.数据类型 数值型 字符型 ⽇期 ...
- MySQL学习笔记06【多表查询、子查询、多表查询练习】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySql的复习(五):联表查询和子查询
MySql的复习(五):联表查询和子查询 查询结果去重 关于查询结果的去重:distinct关键字 select distinct job from emp; // distinct关键字去除重复记录 ...
- MySQL 实现多张无关联表查询数据并分页
MySQL 实现多张无关联表查询数据并分页 1.功能需求 在三张没有主外键关联的表中取出自己想要的数据,并且分页. 2.数据库表结构 水果表: 坚果表: 饮料表: 主要用UNION AL UNION ...
- mysql 查询两个字段相同的数据_sql语句如何查询一个表中某两个字段的相同数据?...
查询一个表中某两个字段的相同数据代码是:Select Name,ID From A group by Name,ID having count (*)>1. 结构化查询语言(Structured ...
- python 全栈开发,Day62(外键的变种(三种关系),数据的增删改,单表查询,多表查询)...
一.外键的变种(三种关系) 本节重点: 如何找出两张表之间的关系 表的三种关系 一.介绍 因为有foreign key的约束,使得两张表形成了三种了关系: 多对一 多对多 一对一 二.重点理解如果找出 ...
- [亲测]Oracle查询--单表查询,连接查询(一)
ORACLE查询(单表查询,连接查询) 一.单表查询 (一)简单条件查询 1. 查询水表编号为 30408 的业主记录 ( 精确查询 ) select * from t_owners where wa ...
- 数据库一对多做链接去重_数据库单表查询-多表查询
""" 1.字段修改 alter modify alter change alter add ''|first|after alter drop 2.表关系: 一对一:外 ...
最新文章
- webapi 异步返回
- 以下关于python的赋值_单选(1分) 以下关于Python的赋值说法中错误的是哪一个选项?...
- vue中的倒计时跳转页面问题和axios网络请求this作用域问题
- java 线程分配_Java多线程原子引用分配
- JS 清空table
- java进阶案例下载_java进阶案例
- python批量裁剪图片_用Python写了一个图片格式批量处理工具
- 动态阈值_如何设置数据看板(大屏)数据异常报警的动态阈值
- 外壳程序(shell):命令解释器commond
- *第三周*数据结构实践项目一【顺序表的基本运算】
- linux系统安装文网卫士,360主机卫士 linux版的安装/使用/卸载 方法
- css动画无限循环转圈,css实现无限循环
- 下列选项中完整描述计算机操作系统作用是,电影《八部半》中,古依多的童年是他生命的源泉,也是他灵魂的开端。...
- php nofollow,php如何实现统一给外部链接添加nofollow值?
- 一个 Gitlab 帐号无法访问文件、克隆项目问题的解决
- 信息系统项目管理师2018年上半年下午案例分析题及答案
- Python查询mysql返回序列化数据
- Windows下端口冲突的解决方法
- Android内置系统apk问题
- Unity Shader标准光照模型——高光反射
热门文章
- 学而不思则罔 - SAP云平台ABAP编程环境的由来和适用场景
- SAP Fiori extension hook added via note
- UI5应用如果出现白屏但是没有任何错误消息打印出来,应该如何处理
- How to use filter in Analytics Path Framework
- ABAP SOAMANAGER暴露的函数function module,以web service方式执行的运行时细节
- SAP S/4HANA分层存储仓库原理介绍LREP - Layered Repository
- what does the checkbox Continue mean in Text Access Sequence customizing
- SAP CRM WebClient UI cross workcenter的context cleanup
- 今日头条Web HTTP请求的白名单
- SAP S/4HANA是如何通过SADL框架加CDS view读取销售订单数据的