關(guān)系數(shù)據(jù)庫操作語言SQL
8.1 SQL支持的數(shù)據(jù)類型
8.1.1 數(shù)值型
1、 準確型
2、 近似型
8.1.2 字符串型
1、 普通編碼字符串類型;
2、 統(tǒng)一編碼字符串類型—Unicode編碼;
3、 二進制字符串類型;
8.1.3 日期時間類型
8.1.4 貨幣類型
8.2 定義和維護關(guān)系表
8.2.1 關(guān)系表的定義與刪除
1、定義表
CREATE TABLE <表名> (<列名><數(shù)據(jù)類型>[列級完整性約束定義]{, <列名><數(shù)據(jù)類型>[列級完整性約束定義]…}[,表級完整性約束定義])
1、 列級完整性約束:
(1) NOT NULL:取值非空;
(2) DEFAULT:指定列的默認值,形式:DEFAULT 常量;
(3) UNIQUE:列取值不重復(fù);
(4) CHECK:列的取值范圍,形式:CHECK(約束表達式);
(5) PRIMARY KEY:指定本列為主碼;
(6) FOREIGN KEY:定義本列為引用其他表的外碼;
2、 刪除表
DROP TABLE <表名>
8.2.2 修改表結(jié)構(gòu)
ALTER TABLE <表名>
8.3 數(shù)據(jù)操作語言
8.3.1 數(shù)據(jù)查詢
1、查詢語句的基本結(jié)構(gòu):
SELECT <目標列名序列> FROM <數(shù)據(jù)源> {WHERE , GROUP BY , HAVING , ORGER BY}
(1) 比較:SELECT A,B,C FROM TABLE_A WHERE A>30;
(2) 確定范圍:WHERE A (NOT)BETWEEN 初始值 AND 結(jié)束值;
(3) 確定集合:WHERE A (NOT)IN (‘A1’,‘A2’….‘A3’);
(4) 字符串匹配:WHERE A LIKE <匹配符>;
(5) 四種<匹配符>:
(A)_(下劃線):匹配任意一個字符;
(B)%(百分號):匹配0個或多個字符;
(C)[ ]:匹配[ ]中的任意一個字符;
(D)[^]:不匹配[ ]中的任意一個字符;
(6) 涉及空值的查詢:WHERE A IS (NOT)NULL;
(7) 多重條件查詢:AND(條件必須全部為TRUE,結(jié)果才為TRUE),OR(任一條件為TRUE,結(jié)果即為TRUE);
(8) 對查詢結(jié)果進行排序:ORDER BY A [ASC(順序) | DESC(逆序)];
(9) 列別名:列名 AS 新列名;
(10) 消除取值相同的行:SELECT DISTINCT A FROM TABLE_A;
(11) 使用聚合函數(shù)統(tǒng)計數(shù)據(jù):SQL的聚合函數(shù):
(A) COUNT(*):統(tǒng)計表中元組的個數(shù);
(B) COUNT([ALL (全部)| DISTINCT(無重復(fù))] <列名>):統(tǒng)計本列非空列值的個數(shù);
(C) SUM(列名):計算列值的總和(必須是數(shù)值型列);
(D) AVG(列名):計算列值平均值(必須是數(shù)值型列);
(E) MAX(列名):求列最大值;
(F) MIN(列名):求列最小值;
(12) 對查詢結(jié)果進行分組計算:
(A) 使用GROUP BY;
(B) 使用HAVING子句;
3、 連接查詢
(1) 內(nèi)連接:FROM 表1 JOIN 表2 ON (連接條件);
(2) 自連接:一種特殊的內(nèi)連接,相互連接的表在物理上是同一張表,但通過為表取別名的方法,在邏輯上分為兩張表;
(3) 外連接:輸出不滿足連接條件的元組,格式:
FROM 表1 LEFT|RIGHT OUTER JOIN 表2 ON (連接條件)
2015年全國職稱計算機考試教材(2007模 .. 定價:¥225 優(yōu)惠價:¥213 更多書籍 | |
全國職稱計算機考試速成過關(guān)系列套裝:W .. 定價:¥133 優(yōu)惠價:¥133.0 更多書籍 |