| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> MySQL 高级SQL语句 (二) -> 正文阅读 |
|
[大数据]MySQL 高级SQL语句 (二) |
目录 一、表连接查询MYSQL数据库中的三种连接:
注:oracle数据库支持 outer join(外连接),mysql不支持。 1.1 left join(左连接)左连接也可以被称为左外连接,?在from子句中使用left join 或者 left outer join 关键字来表示。 左连接以左侧表为基础表,接收左表的所有行,并用这些行与右侧参考中的记录进行匹配,也就是说?匹配左表的所有行以及右表中符合条件的行。
1.2 right join(右连接)右连接也称为右外连接,在from子句中使用right join 或者right outer join 关键字来表示。右连接跟左连接正好相反,它是以右表为基础表,用于接收右表中所有行,并用这些记录与左表中的行进行匹配。
1.3 inner join(内连接)mysql中的内连接就是两张或多张中同时符合某种条件的数据记录的组合,通常在from子句中使用关键字inner join 来连接多张表,并使用on子句设置连接条件,内连接是系统默认的表连接,所以在from子句后可以省略inner 关键字,值使用关键字join。 同时有多个表时,也可以联系使用inner join来实现多表的内连接,不过为了更好的性能,建议最好不要超过三个表。
二、子查询
2.1?select 查询子语句可以与主语句所查询的表相同,也可以是不同的表
相同表查询(取反)
多表查询(取反)
?非取反进行查询
结合as别名进行子查询当我们将一个查询的结果集作为一个新表再进行查询时,直接使用会进行报错,我们需要是用到别名
2.2?insert插入子查询还可以用在insert语句中,子查询的结果集可以通过insert语句插入到其他表中
?2.3?update 修改update语句也可以使用子查询,uodate内的子查询,在set更新内容时,可是单独一列,也可以是多列
?2.4 delete 删除
?2.5 exists布尔输出exists关键字在子查询时,主要用于判断子查询的结果集是否为空,如果不为空,则返回true,反之返回false
?三、MySQL视图视图是一张虚拟的表,这张虚拟表中不包含真实数据,只是做了真实数据的映射。 功能:
注:视图适合于多表浏览时使用,不适合增、删、改 3.1?视图与表的区别
3.2?视图与表的联系
3.3?单表创建视图? 3.4?多表创建视图3.5?修改视图或原表内容修改原表的内容
修改视图内容?四、NULL值在SQL语句使用过程中,经常会碰到NULL这几个字符。通常使用NULL来表示缺失的值,也就是表中该字段是没有值的。如果在创建表时,限制某些字段不为空,则可以使用NOT NULL关键字,不使用则默认可以为空。在向表内插入记录或者更新记录时,如果该字段没有NOT NULL并且没有值,这时候新纪录的该字段将被保存为NULL。需要注意的是,NULL值与数字0或者空白(spaces)的字段是不同的,值为NULL的字段是没有值的。在SQL语句中,使用IS NULL可以判断表内的某个字段是不是NULL值,相反的用IS NOT NULL可以判断不是NULL值。 NULL值和空值的区别
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 5:39:39- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |