ALTER TABLE Table_Card DROP COLUMN CardType% n4 y% O# d6 |& H; {
8.4 SELECT Cname FROM Tablb_Customer WHERE1 k/ C9 r5 Y* q. j$ K. h' b4 k
Address IN (‘海淀区’,’朝阳区’) AND; r( F- }$ W& i0 _4 } s
age BETWEEN 40 AND 50 AND- x% m t& G5 x# F& I
Cname LIKE ‘[王张李]%’ (‘王_ _’)
* F0 l+ @) z, w5 |+ d: NORDER BY StartDate ASC, EndDate DESC
- X0 Q) A* j1 N. h. w" [4 E8.5 除COUNT(*)不忽略空值外,其他函数COUNT(DISTINCT 列名)、SUM()、AVG()、MAX()、MIN()均忽略空值。均返回单值。
! E' a% s6 a- o1 B7 O3 d& ^1 MSELECT SUM (Score),MAX(Age),MIN(Age),AVG(Age),COUNT (DISTINCT 。.)FROM Table
3 ^( o" e" B/ A, G7 F: P& ~8.6 分组(GROUP BY)依据列不能是text,ntext,image和bit类型的列。先分组后计算
* F/ D' c4 M% r) n6 `% g, T) ] k5 |统计每种类别商品的商品数,只列出商品数大于4个的商品类别编号和商品数:
2 E/ S+ V; B0 _% X, U+ o. ?1 w1 wSELECT GoodClassID as 商品类别编号,COUNT(*)as 商品数 FROM Table_Goods
3 p' [5 I+ y! KGROUP BY GoodClassID HAVING COUNT(*)》4- x2 B8 c, S* p) f# R9 e
8.7 自连接:查询与王晓在同一个区的顾客的姓名及地址:( w2 k+ r1 o2 I5 H8 U$ j4 Q7 I
SELECT T2.Name,T2.Address FROM Table_Customer as T1 JION Table_Customer as T2, c5 i9 H# p5 T& c" F/ u7 e! q
ON T1.Address = T2.Address WHERE T1.Name = ‘王晓’ AND T2.Name !=’王晓’
7 P* m. U3 k/ b2 ~子查询:一个SELECT语句嵌套在一个SELECT、UPDATE、INSERT或DELETE语句中
& k" ?% m5 G$ w0 H: TSELECT Name,Address FROM Table_Customer WHERE Address IN7 `" s0 }2 i) X+ a- y* Y2 {
(SELECT Address FROM Table_Customer WHERE Name=’王晓’) AND Name!=’王晓’
% e/ ^1 v, |3 A# `7 Y6 Y8.8 外连接:LEFT OUTER JOIN 左外连接(左表全输出)RIGHT OUTER JOIN 右外连接* x( d' @6 G* a; [' J3 p: D
8.9 子查询: [NOT] IN()集合 不相关子查询,先内后外. A& U' l0 {$ N# Q }; X: O
WHERE 列 =/《/》 () 比较 不相关子查询,先内后外* L1 q1 s( Y6 m: ~
[NOT] EXIST(SELECT *)存在 相关子查询,先外后内- _2 M( f9 f* x* J$ P; l
8.10 修改数据:INSERT [INTO]表名 [列名表] VALUES(值列表)
: ^* ~ V9 c8 H+ P5 l: b; S& NUPDATE 表名 SET 列名=表达式 [WHERE子句]/ DELETE [FROM] 表名 [WHERE子句]& H+ k% ]" R% i3 ]. `8 O( U
分情况修改:UPDATE Table_Goods: U5 s3 m: ^; p: _
SET SalePrice= CASE GoodsClassName
! G) f! s* e, _WHEN ‘家用电器’ THEN SalePrice – SalePrice*0.05) A+ d9 m5 \+ |8 q" s) b0 a. Z
WHEN ‘服装’ THEN SalePrice + SalePrice*0.068 K6 [& W, g- }- c! g
ELSE SalePrice
; R3 Y2 @. x9 C& _5 REND
9 T1 W# ]9 \1 k- S& v/ `FROM Table_Goods a JION Table_GoodsClass b ON a.ClassID=b.ClassID
# I0 V c6 l7 K8.11 创建索引:CREATE [UNIQUE][CLUSTERED][NONCLUSTERED] INDEX 索引名0 G2 n9 g) {6 p! o
ON 表名 (列名 [顺序(ASC/DESC)])
- h% z; C: v) P+ n$ \2 b5 i8.12 视图:由从数据库基本表中选取出来的数据组成的逻辑窗口,是一个虚表,数据库只存放视图的定义而不存放视图包括的数据。对视图的操作最终都会转换为对基本表的操作。3 R. o% c. E+ q# S, s3 E( F( f+ u, z \
CREATE VIEW 视图名 [视图列名表]$ w1 k6 V2 {2 u, L, d
AS
, G3 \3 ?* J7 R7 L* U2 \$ t$ mSELECT 语句
7 L" ~, { N( E9 k. E8 b! H; z[WITH CHECK OPTION]4 j g, ~8 ?: n" Z* D4 h4 n' e; x
作用:简化数据查询语句;使用户从多角度观察同一数据;提高了数据安全性(屏蔽掉敏感数据);提供一定程度的逻辑独立性
$ a* Z" C2 y y# }$ P3 K8.13 定点数:numeric(p,q)或decimal(p,q),p为精度(数字位个数),不大于38,q为小数位个数;bit类型:只存储1和0,不多于8个bit列则只用1个字节存储
/ ^9 ^1 G' v8 v7 u8.14 Char(n)代表的是普通字符编码按定长存储的字符串,“n”的含义是字符的个数,固定占用n个字节的空间。varchar(n) 代表的是普通字符编码按不定长存储的字符串,“n”的含义也是字符的个数,按字符的实际长度占用空间。 |