SQL
来源:互联网 发布:新浪页游助手mac版 编辑:程序博客网 时间:2024/05/17 22:51
传统的集合运算
专门的关系运算
外连接
左外连接(LEFT OUTER JOIN 或 LEFT JOIN)
保留左边的NULL,舍弃右边NULL
右外连接(RIGHT OUTER JOIN 或 RIGHT JOIN)
保留右边的NULL,舍弃左边NULL
DISTINCT
两个本来并不完全相同的元组,投影到指定的某些列上后,可能就变成相同的行了,可以用DISTINCT来取消重复的行。
ORDER BY子句
1.对于空值NULL,若按升序排序,含空值的元组将最后显示。若按降序排,则最先显示。
2.子查询的SELECT语句中不能使用ORDER BY子句,只能对最终查询结构排序。
GROUP BY子句
GROUP BY子句将查询结果按某一列或多列分组,值相等的为一组。
对查询结构分组的目的:是为了细化聚集函数的作用对象。如果未对聚集函数分组,聚集函数将作用于整个查询结果。分组后的聚集函数将作用于每一个组,即每一个组都有一个函数值。
where子句与Having的区别在于作用的对象不同。where作用于表或视图,从中选择满足条件的元组。HAVING作用于组,从中选择满足条件的组。
连接查询
一、等值与非等值连接查询
二、自身连接
三、外连接
四、复合条件查询
嵌套查询
不相关子查询:子查询的查询条件不依赖于父查询
相关子查询: 子查询的查询条件依赖于父查询
一、带有IN的子查询
二、带有比较运算符的子查询
三、带有ANY(SOME)或ALL的子查询
事实上,用聚集函数实现子查询通常比直接使用ANY或ALL查询效率要高。
四、带有EXISTS的子查询
1.带有EXSITS谓词的子查询不返回任何数据,只产生逻辑真true或逻辑假false。
2.一些带有EXSISTS或NOT EXSISTS谓词的子查询不能被其它形式的子查询替换,但带有IN、比较运算符、ANY和ALL谓词的子查询都能用带EXSISTS谓词的子查询替换。
在实际应用中,应该尽量不要使用嵌套子查询技术,因为嵌套的层次越多,其查询性能越低。推荐使用表连接的方式。
- 并(Union)
- 差
- 交
- 笛卡尔积
专门的关系运算
- 选择
- 投影
- 连接
- 除运算
外连接
左外连接(LEFT OUTER JOIN 或 LEFT JOIN)
保留左边的NULL,舍弃右边NULL
右外连接(RIGHT OUTER JOIN 或 RIGHT JOIN)
保留右边的NULL,舍弃左边NULL
DISTINCT
两个本来并不完全相同的元组,投影到指定的某些列上后,可能就变成相同的行了,可以用DISTINCT来取消重复的行。
ORDER BY子句
1.对于空值NULL,若按升序排序,含空值的元组将最后显示。若按降序排,则最先显示。
2.子查询的SELECT语句中不能使用ORDER BY子句,只能对最终查询结构排序。
GROUP BY子句
GROUP BY子句将查询结果按某一列或多列分组,值相等的为一组。
对查询结构分组的目的:是为了细化聚集函数的作用对象。如果未对聚集函数分组,聚集函数将作用于整个查询结果。分组后的聚集函数将作用于每一个组,即每一个组都有一个函数值。
where子句与Having的区别在于作用的对象不同。where作用于表或视图,从中选择满足条件的元组。HAVING作用于组,从中选择满足条件的组。
连接查询
一、等值与非等值连接查询
二、自身连接
三、外连接
四、复合条件查询
嵌套查询
不相关子查询:子查询的查询条件不依赖于父查询
相关子查询: 子查询的查询条件依赖于父查询
一、带有IN的子查询
二、带有比较运算符的子查询
三、带有ANY(SOME)或ALL的子查询
事实上,用聚集函数实现子查询通常比直接使用ANY或ALL查询效率要高。
四、带有EXISTS的子查询
1.带有EXSITS谓词的子查询不返回任何数据,只产生逻辑真true或逻辑假false。
2.一些带有EXSISTS或NOT EXSISTS谓词的子查询不能被其它形式的子查询替换,但带有IN、比较运算符、ANY和ALL谓词的子查询都能用带EXSISTS谓词的子查询替换。
在实际应用中,应该尽量不要使用嵌套子查询技术,因为嵌套的层次越多,其查询性能越低。推荐使用表连接的方式。
0 0
- SQL
- SQL
- SQL
- sql
- sql
- SQL
- sql
- SQL (-)
- sql
- SQL
- SQL
- SQL
- sql
- sql
- sql
- sql
- SQL
- sql
- Running a function on multiple elements using Jquery .each()
- 实验室的毕业照
- 求收百度收录
- wikioi 1034 家园 动态网络中的时间流(费用流)
- 批量对txt里列出的图像去掉空格和#
- SQL
- IPO在即创始人却辞职,这是什么节奏?
- 关于unity3d创建按钮的问题(新手)
- RadioGroup应用于各种切换功能需求知识点
- WebBrowser介绍——Javascript与C++互操作
- 执行mvn eclipse:eclipse生成ecllipse项目文件,然后导入到eclipse中出错
- 恒大皇马足校启动西班牙分校 打造中国足球人
- 第2次实验——算法基本功 与 综合思考
- 今日头条创始人张一鸣:独特定位是我们的优势