T-Sql
一:查询
1.单表查询
格式:
Select [all|distinct] <列表时1>[,<列表达式>..]
From<表|视图>[,<表|视图>...]
[where<查询条件表达式>]
[Grop By <列1> [having <条件表达式>]]
[Order By <列1> [asc|desc]]
(1).查询条件,where与having的区别:
查询条件:
{
比较 :=,>,<,>=,<=,!=,<>,!>,!<;Not+上述比较运算符
确定范围 :between and ,not betwenn and.
确定集合 :in,not in
字符匹配 :like ,not like.
空值 :is null,is not null.
多重条件:and ,or,not
}
where与having的区别:
where子句与having短语的主要的区别是作用对象不同。
(a).where字句作用基于表或视图,从中选取满足查询条件的元组。having短语作用与组,从中选取满足条件的元组.上面的查询条件在where与having都能使用。
(b).having能用聚合函数作为条件表达式,而where不可以。
(2).Group by子句的作用
Group by子句将查询结果按某一列的值或多列的值分组,值相等的为一组.
对查询结果分组的目的是为细化聚合函数的作用对象。如果未对查询结果分组,聚合函数将作用于整个查询结果。分组后聚集函数将作用于每一个组,及每一个组都一个函数值。
2.外连接查询
外连接与内连接的区别:
(1).左连接
(2).右连接
(3).全连接
3.嵌套请查询
T-sql中一个select -from- where称为一个查询块。当在一个查询块的where或having子句中包含另外一个查询块时候,称为嵌套查询。
(1).不相关子查询
概念:
执行顺序:
(2).相关子查询
概念:
执行顺序:
(3)带查询条件和谓词(any|some|all|exists|not exists)的子查询。
(4)各种查询之间的转换及其性能
4.集合查询
由于select查出的结果是元组(记录)的集合,所以可以对select查询的结果进行集合操作(并集union,交集intersect,差except)。
二:数据更新