MySQL基础五之子查询和连接
2016-08-25 16:34
351 查看
1.子查询:是指出现在SQL语句内的查询
1.1.嵌套在查询内部,而且始终被圆括号包裹
1.2.分类:使用比较符(>、<、>=、<=、any、some、all)
1.3.将查询的结构写入数据表:INSERT INTO table_name [(col_name,...)] SELECT ...
1.4.多表之间的连接:
table_reperence
{[INNER | CROSS] JOIN | {LEFT | RIGHT| ALL} [OUTER] JOIN}
table_reperence
ON conditional_expr
1.4.1.内连接:只有两个表相匹配的行才会在结果集中出现
1.4.2.左连接:左边的表不受限制(A LEFT JOIN B join_condition)
1)数据表B的结果集依赖于数据表A
2)数据表A的结果集根据左连接条件依赖于所有数据表(B表除外)
3)左连接条件决定如何检索数据表B(没有WHERE的条件下)
4)如果数据表A的某条记录符合WHERE条件,但是又在数据表B中不存在,则将生成一个所有列为空的额外的B行
1.4.3.右连接:右边的表不受限制
1.4.4.全连接:左右的表都不受限制
1.5.多表的更新:
UPDATE table_name INNER JOIN table_name1 ON col_name1 = col1_name SET col_name = col2_name
1.1.嵌套在查询内部,而且始终被圆括号包裹
1.2.分类:使用比较符(>、<、>=、<=、any、some、all)
1.3.将查询的结构写入数据表:INSERT INTO table_name [(col_name,...)] SELECT ...
1.4.多表之间的连接:
table_reperence
{[INNER | CROSS] JOIN | {LEFT | RIGHT| ALL} [OUTER] JOIN}
table_reperence
ON conditional_expr
1.4.1.内连接:只有两个表相匹配的行才会在结果集中出现
1.4.2.左连接:左边的表不受限制(A LEFT JOIN B join_condition)
1)数据表B的结果集依赖于数据表A
2)数据表A的结果集根据左连接条件依赖于所有数据表(B表除外)
3)左连接条件决定如何检索数据表B(没有WHERE的条件下)
4)如果数据表A的某条记录符合WHERE条件,但是又在数据表B中不存在,则将生成一个所有列为空的额外的B行
1.4.3.右连接:右边的表不受限制
1.4.4.全连接:左右的表都不受限制
1.5.多表的更新:
UPDATE table_name INNER JOIN table_name1 ON col_name1 = col1_name SET col_name = col2_name
相关文章推荐
- MySQL基础8-笛卡尔积和等值连接(多表查询)
- Java基础16:Java和Mysql的连接、查询和修改
- MySQL基础9-主键约束、外键约束、等值连接查询、一对一和多对多关系
- MYSQL基础八--子查询和连接
- MySQL基础教程33-连接查询-内连接
- mysql常用基础操作语法(八)~~多表查询合并结果和内连接查询【命令行模式】
- mysql基础总结 连接查询
- MySQL的表连接查询基础
- MySQL基础教程34-连接查询-外连接
- MYSQL基础_聚合函数_分组和多表连接查询
- MySQL基础语句之子查询与连接《图文三》
- mysql常用基础操作语法(九)~~外连接查询【命令行模式】
- MySQL基础(三)多表查询(各种join连接详解)
- [基础问题]不能远程连接Mysql 的解决方案
- JAVA连接MYSQL,查询 ,添加,删除,语句
- C/C++连接查询MYSQL
- 查询数据库当前用户连接信息(MySQL,Oracle)
- JAVA连接MYSQL,查询 ,添加,删除,语句
- php入门学习知识点一 PHP与MYSql连接与查询
- 基础--JAVA对Mysql进行连接、插入、修改、删除操作