SQL:1999基本语法(学习笔记)
SQL:1999基本语法
SELECT [DISTINCT] * | 列名称 [AS]别名,........
FROM 表名称1 [别名1][CROSS JOIN表名称2 别名2]|
[NATURAL JOIN表名称2 别名2]
[ JOIN表名称2 别名2 USING (关联列名称)]
[ JOIN表名称2 别名2 on (关联条件)]
[LEFT | RIGHT | FULL OUTER JOIN 表2 ON (关联条件)]
[WHERE 条件(s)]
[ORDER BY 排序的字段 1,ASC| DESC,排序的字段2 ASC| DESC,....]
- 交叉连接(CROSS IN)
语法:
SELECT [DISTINCT] * | 列名称 [AS]别名,........
FROM 表名称1 [别名1][CROSS JOIN表名称2 别名2]|
[WHERE 条件(s)]
[ORDER BY 排序的字段 1,ASC| DESC,排序的字段2 ASC| DESC,....]
使用交叉连接门生笛卡尔积
SELECT *
FROM emp e CROSS JOIN dept d;
使用where消除
SELECT *
FROM emp e CROSS JOIN dept d
WHERE e.deptno=d.deptno;
- 自然连接(NATURAL JOIN)
语法:
SELECT [DISTINCT] * | 列名称 [AS]别名,........
FROM 表名称1 [别名1]
[NATURAL JOIN表名称2 别名2]
[WHERE 条件(s)]
[ORDER BY 排序的字段 1,ASC| DESC,排序的字段2 ASC| DESC,....]
使用自然连接
SELECT *
FROM emp NATURAL JOIN dept;
--自然连接可以直接消除笛卡尔积
- USING子句
语法:
SELECT [DISTINCT] * | 列名称 [AS]别名,........
FROM 表名称1 [别名1] [ JOIN表名称2 别名2 USING (关联列名称)]
[WHERE 条件(s)]
[ORDER BY 排序的字段 1,ASC| DESC,排序的字段2 ASC| DESC,....]
使用USING子句
SELECT *
FROM emp JOIN dept USING (deptno); --USING后字段要用()
- ON子句
语法:
SELECT [DISTINCT] * | 列名称 [AS]别名,........
FROM 表名称1 [别名1] [ JOIN表名称2 别名2 on (关联条件)]
[WHERE 条件(s)]
[ORDER BY 排序的字段 1,ASC| DESC,排序的字段2 ASC| DESC,....]
使用ON子句:
SELECT *
FROM emp e JOIN dept d ON (e.deptno=d.deptno) ;
--ON后是条件
--()可以省略
- 外连接
语法:
SELECT [DISTINCT] * | 列名称 [AS]别名,........
FROM 表名称1 [别名1][LEFT | RIGHT | FULL OUTER JOIN 表2 ON (关联条件)]
[WHERE 条件(s)]
[ORDER BY 排序的字段 1,ASC| DESC,排序的字段2 ASC| DESC,....]
左外连接:
SELECT *
FROM emp e LEFT OUTER JOIN dept d
ON(e.deptno=d.deptno);
--使用ON消除笛卡尔积
SELECT *
FROM emp e LEFT OUTER JOIN dept d
USING (deptno);
--使用USING消除笛卡尔积
右外连接:
SELECT *
FROM emp e RIGHT OUTER JOIN dept d
ON(e.deptno=d.deptno);
--使用ON消除笛卡尔积
SELECT *
FROM emp e RIGHT OUTER JOIN dept d
USING (deptno);
--使用USING消除笛卡尔积
全外连接:
SELECT *
FROM emp e FULL OUTER JOIN dept d
ON(e.deptno=d.deptno);
--使用ON消除笛卡尔积
SELECT *
FROM emp e FULL OUTER JOIN dept d
USING (deptno);
--使用USING消除笛卡尔积
SQL:1999基本语法(学习笔记)的更多相关文章
- 《SQL 反模式》 学习笔记
第一章 引言 GoF 所著的的<设计模式>,在软件领域引入了"设计模式"(design pattern)的概念. 而后,Andrew Koenig 在 1995 年造了 ...
- Golang 语法学习笔记
Golang 语法学习笔记 包.变量和函数. 包 每个 Go 程序都是由包组成的. 程序运行的入口是包 main. 包名与导入路径的最后一个目录一致."math/rand" 包由 ...
- MarkDown语法 学习笔记 效果源码对照
MarkDown基本语法学习笔记 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 下面将对Markdown的基本使用做一个介绍 目 ...
- 毕业设计 之 五 PHP语法学习笔记
毕业设计 之 四 PHP语法学习笔记 作者:20135216 平台:windows10 软件:XAMPP,DreamWeaver 说明:该笔记是对网站编程语言的详细学习 一.PHP基础 0. 关于环境 ...
- SQL:1999基本语法
SQL:1999基本语法 SELECT [DISTINCT] * | 列名称 [AS]别名,........ FROM 表名称1 [别名1][CROSS JOIN表名称2 别名2]| [NATURAL ...
- doy05循环语法学习笔记
doy05循环语法学习笔记 一.while循环语法: 1.基本用法示例 x = 1 while x <= 5: print(x) x += 1 2.死循环:永远不结束的循环 如:while Tr ...
- 《SQL基础教程》+ 《SQL进阶教程》 学习笔记
写在前面:本文主要注重 SQL 的理论.主流覆盖的功能范围及其基本语法/用法.至于详细的 SQL 语法/用法,因为每家 DBMS 都有些许不同,我会在以后专门介绍某款DBMS(例如 PostgreSQ ...
- mySql 基本语法学习笔记
create database if not exists yang; drop database if exists yang; show databases; show dat ...
- Mustache.js语法学习笔记
原文地址:http://www.cnblogs.com/flypig88/archive/2012/05/14/2497780.html 看了Mustache的github,学学其中的语法,做个笔记 ...
随机推荐
- vue 组件开发 props 验证
使用props 在Vue中父组件向子组件中传送数据是通过props实现的,一个简单的使用props的例子: <!DOCTYPE html> <html> <head> ...
- 在WAMPSERVER下增加多版本的PHP(PHP5.3,PHP5.4,PHP5.5)完美支持。
WAMPServer可以让开发者在Windows系统下快速搭建WAMP环境,它支持多版本的Apache.MySQL.PHP之间的相互切换,互不影响,对于PHPer开发者来讲极为方便快速. 以下是在WA ...
- CentOS 7修改网卡名为eth0
第一步: 编辑文件加入如下所示参数 vi /etc/sysconfig/grub GRUB_CMDLINE_LINUX=”rd.lvm.lv=vg0/swap vconsole.keymap=us c ...
- 记录一次软件Bug发生的过程
结束一周的紧张工作,难得的休息时光,坐在电脑前浏览博客.听听歌.看看大片,这也算是一种享受. 因为年度的开发任务已经开始了,所以最近会特别忙,新人的成长又没有想象中的好,经常在他们身上看到自己去年的影 ...
- QT 安装 4.8.7 on solaris 10
1. 下载 QT 4.8.7: http://download.qt.io/official_releases/qt/4.8/4.8.7/qt-everywhere-opensource-src-4 ...
- linux系统编程:线程原语
线程原语 线程概念 线程(thread),有时被称为轻量级进程(Lightweight Process,LWP).是程序运行流的最小单元.一个标准的线程由线程ID.当前指令指针(PC),寄存器集合和堆 ...
- QQclient团队博客
Windows 8 视频採集 http://impd.tencent.com/?p=25 句柄泄漏检測工具的实现原理 http://impd.tencent.com/?p=29
- C#调用 Oracle 存储过程样例代码
-- 建表 CREATE TABLE sale_report ( sale_date DATE NOT NULL , sale_item VARCHAR(2) NOT NULL , ...
- nginx做TCP代理实现群集
nginx做TCP代理实现群集 nginx从版本1.9开始,既能做HTTP代理,又能做TCP代理,这就非常完美了. 配置nginx.conf. 为了简单起见,笔者故意去掉了HTTP代理配置部分,只保留 ...
- Xcode插件管理器Alcatraz的使用
Xcode插件管理器Alcatraz的使用 下载地址 https://github.com/alcatraz/Alcatraz 下载软件包 解压以及编译 重启Xode并Load Bundle 安装插件 ...