美文网首页
sql自学笔记(七)

sql自学笔记(七)

作者: itczt | 来源:发表于2019-04-10 20:00 被阅读0次

连接

MySQL在SELECT语句、多表更新、多表删除语句中支持JOIN操作

语法结构

table_reference
{[INNER | CROSS | JOIN]{LEFT | RIGHT}[OUTER]JOIN}
table _ reference
ON conditional _expr

数据表参照

table _ reference
tbl _ name [[AS]alias] | table _ subquery [AS] alias

数据表可以使用tbl _ name AS alias _ name 或 tbl _ name alias _name赋予别名。
tbl _ subquery可以作为子查询使用在FROM子句中,这样的子查询必须为其赋予别名。

连接类型

INNER JOIN ,内连接
在MySQL中,JOIN,CROSS.JOIN和INNER JOIN是等价的。
LEFT [OUTER] JOIN,左外连接
EIGHT[OUTER] JOIN ,右连接

连接条件

使用ON关键字来设定连接条件,也可以使用WHERE来代替。
通常使用ON关键字来设定连接条件。
使用WHERE关键字进行结果集记录的过滤。

内连接

显示左表及右表符合连接条件的记录。


内连接

左外连接

显示左表的全部记录及右表符合连接条件的记录。


左外连接

右外连接

显示右表的全部记录及左表符合连接条件的记录。


右外连接

外连接

A LEFT JOIN B join _ condition
数据表B的结果依赖数据表A。
数据表A的结果集根据左连接条件依赖所有数据表(B表除外)
左外连接条件决定如何检索数据B(在没有指定WHERE条件的情况下)。
如果数据表A的某条记录符合WHERE条件,但是在数据表B不存在符合连接条件的记录,将生成一个所有列为空的额外的B行。
如果使用的连接查找的记录在连接数据表中不存在,并且在WHERE子句中尝试以下操作:col_ namd IS NULL时,如果col _name 被定义为NOT NULL,MySQL将在找到符合连接条件的记录后停止搜索更多的行。

自身连接

同一个数据表对其自身进行连接。

多表删除

DELETE tbl _ name [.*][tbl _ name [.*]]......
FROM table _ referencess
[WHERE where _ condition].

相关文章

  • sql自学笔记(七)

    连接 MySQL在SELECT语句、多表更新、多表删除语句中支持JOIN操作 语法结构 数据表参照 数据表可以使用...

  • SQL语言学习(一)

    本系列内容为http://www.w3cschool.cn/sql 教程的自学笔记 SQL,指结构化查询语言,全称...

  • sql自学笔记(一)

    1.数据库简介 解决的问题:持久化存储,优化读写,保证数据的有效性。关系型数据库:基于E-R模型、使用sql语言进...

  • sql自学笔记(三)

    数据类型 数据类型是指列存储过程参数,表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型。 ...

  • sql自学笔记(五)

    INSERT 插入记录 方法一: 方法二:INSERT [INTO] tbl_name SET col _name...

  • sql自学笔记(二)

    MySQL bin目录,存储可执行文件。 data目录,存储数据文件。 docs,文档。 include目录,存储...

  • sql自学笔记(四)

    约束 1.约束保证数据的完整性和一致性。2.约束分为表级约束和列级约束3.约束类型包括: NOT NULL(非空 ...

  • sql自学笔记(六)

    子查询 子查询(subquery)是指出现在其他SQL语句内的SELECT子句。例如:SELECT * FROM ...

  • sql自学笔记(九)

    自定义函数:简称UDF,是对MySQL扩展的的一种途经。创建自定义函数:CREATE TUNCTION .......

  • sql自学笔记(十)

    1.存储过程:是SQL语句和控制语句的预编译集合,以一个名称存储并作为一个单元处理。2.参数:输入类型、输出类型、...

网友评论

      本文标题:sql自学笔记(七)

      本文链接:https://www.haomeiwen.com/subject/lkwoiqtx.html