二二級vf sl-資料 ppt課件_第1頁
二二級vf sl-資料 ppt課件_第2頁
二二級vf sl-資料 ppt課件_第3頁
二二級vf sl-資料 ppt課件_第4頁
二二級vf sl-資料 ppt課件_第5頁
已閱讀5頁,還剩5頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第四部分第四部分 SQL言語言語SQLStuctured Query Langage 構造化查詢言語構造化查詢言語查詢是查詢是SQL的重要組成部分,的重要組成部分,SQL還包括數據定義、還包括數據定義、數據支配和數據控制功能等部分,數據支配和數據控制功能等部分,SQL曾經成為關系曾經成為關系數據庫的規范數據言語,該言語具有如下特點:數據庫的規范數據言語,該言語具有如下特點:1.SQL是一種一體化的言語,它包括了數據定義、數是一種一體化的言語,它包括了數據定義、數據查詢、數據支配據查詢、數據支配 和數據控制等方面的功能,它可以完成數據庫活動和數據控制等方面的功能,它可以完成數據庫活動的全部任務。

2、的全部任務。2.SQL是一種高度非過程化的言語,用戶只需求描畫是一種高度非過程化的言語,用戶只需求描畫“做什么,做什么,SQL語語 言就可以將要求交給系統,系統自動完成全部任務。言就可以將要求交給系統,系統自動完成全部任務。3.SQL言語非常簡約,很接近自然言語英語,因言語非常簡約,很接近自然言語英語,因此易學,易掌握。此易學,易掌握。4.SQL言語可以直接以命令方式交互運用,也可以嵌言語可以直接以命令方式交互運用,也可以嵌入到程序設計言語入到程序設計言語 中以程序方式運用。中以程序方式運用。一、查詢功能一、查詢功能SQL的中心是查詢,查詢命令是的中心是查詢,查詢命令是SELECT。常用語法。

3、常用語法格式如下:格式如下:SELECTFROMWHEREGROUP BY HAVING UNIONALLORDER BY闡明:闡明: SELECT闡明要查詢的數據。闡明要查詢的數據。 FROM闡明要查詢的數據來自那個或那些表可對單表或多表進展查詢。闡明要查詢的數據來自那個或那些表可對單表或多表進展查詢。 WHERE闡明查詢條件即選擇元組的條件。闡明查詢條件即選擇元組的條件。 GROUP BY 短語用于對查詢結果進展分組,可以利用它進展分組匯總。短語用于對查詢結果進展分組,可以利用它進展分組匯總。 HAVING必需跟隨必需跟隨GROUP BY運用,用來限定分組必需滿足的條件。運用,用來限定分組

4、必需滿足的條件。 ORDER BY用來對查詢的結果進展排序。用來對查詢的結果進展排序。1、根本查詢語句基于一個表的查詢、根本查詢語句基于一個表的查詢 注注:普通情況查詢結果和查詢條件來自于同一個表普通情況查詢結果和查詢條件來自于同一個表.1無條件查詢。無條件查詢。【格式】【格式】SELECT DISTINCT 或或 FROM 【功能】從一表中挑選所要的數據。【功能】從一表中挑選所要的數據。【闡明】【闡明】 DISTINCT: 表示顯示無反復結果的記錄。表示顯示無反復結果的記錄。 *:表示表中一切字名:表示表中一切字名2帶條件帶條件WHERE的查詢語句的查詢語句【格式】【格式】SELECT DI

5、STINCT FROM WHERE 【功能】從一個表中查詢滿足條件的數據。【功能】從一個表中查詢滿足條件的數據。【闡明】【闡明】分為兩種:一種是一個簡單的關系表達式,另一中是分為兩種:一種是一個簡單的關系表達式,另一中是 用用AND 或或 OR 將多個關系達式銜接起來的表達式。將多個關系達式銜接起來的表達式。2、聯接查詢基于兩個表或兩個以上表的查詢、聯接查詢基于兩個表或兩個以上表的查詢注:普通情況下當查詢結果和查詢條件來自于多個表時用聯接查詢。注:普通情況下當查詢結果和查詢條件來自于多個表時用聯接查詢。1兩個表的簡單聯接查詢兩個表的簡單聯接查詢 SELECT 字段名字段名1,字段名,字段名2,

6、字段名,字段名N FROM 表名表名1,表名,表名2 WHERE 表名表名1.字段名字段名=表名表名2.字段名字段名 AND 2兩個表的超級聯接查詢兩個表的超級聯接查詢 SELECT 字段名字段名1,字段名,字段名2,字段名,字段名N FROM 表名表名1 JOIN 表名表名2 ON 表名表名1.字段名字段名=表名表名2.字段名字段名 WHERE 3三個表的簡單聯接查詢三個表的簡單聯接查詢SELECT 字段名字段名1,字段名,字段名2,字段名,字段名N FROM 表名表名1,表名,表名2,表名,表名3 WHERE 表名表名1.字段名字段名=表名表名2.字段名字段名 AND 表名表名2.字段名字

7、段名=表名表名3.字段名字段名 AND 普通是同名字段普通是同名字段普通是同名字段普通是同名字段普通是同名字段普通是同名字段普通是同名字段普通是同名字段4三個表的超級聯級查詢SELECT 字段名1,字段名2,字段名N FROM 表名1 JOIN 表名2 JOIN 表名3 ON 表名1.字段名=表名2.字段名 ON 表名2.字段名=表名3.字段名 WHERE 注:在VF的SQL命令中分號是續行符號。 當from后的多個關系中有同名字段時,須用前綴指明字段所屬的表。 多表銜接查詢時要指明查詢聯接條件。3、嵌套查詢注:大部分的嵌套可以用聯接來完成特點:外層的查詢條件依賴于內層的查詢結果;最多只能嵌套

8、一層。1兩個表的嵌套查詢SELECT 字段名1,字段名2,字段名N FROM 表名1 WHERE 字段名 IN SELECT 字段名 FROM 表名2 WHERE 2三個表的嵌套查詢SELECT 字段名1,字段名2,字段名N FROM 表名1 WHERE 字段名 INSELECT 字段名 FROM 表名2,表名3 WHERE 表名2.字段名=表名3.字段名 AND 普通是同名字段普通是同名字段普通是同名字段普通是同名字段普通是同名字段普通是同名字段4.幾個特殊運算符幾個特殊運算符 1BETWEENAND 在在和和之間之間 2不等于不等于“!=可用否認運算符可用否認運算符NOT表示表示(注注:N

9、OT IN的運用是重點的運用是重點)。 3LIKE %表示表示0個或多個字符個或多個字符 LIKE _表示恣意一個字符表示恣意一個字符 4利用空值查詢利用空值查詢 IS NULL IS NOT NULL5分組與計算查詢分組與計算查詢 SELECT DISTINCT FROM WHERE GROUP BY HAVING ORDER BY ASC | DESC 【功能】包括有排序、函數運算【功能】包括有排序、函數運算闡明:闡明:1函數有以下幾種:函數有以下幾種: sum(求和字段名求和字段名) avg(求平均值字段名求平均值字段名) count(*) max(求最大值字段名求最大值字段名) min

10、(求最小值字段名求最小值字段名)注:這五個函數只能用在注:這五個函數只能用在SELECT和和FROM中間,或是中間,或是HAVING后面。后面。2GROUP BY 字段名字段名,字段名,字段名HAVING 條件條件 功能:先按字段分組,再進展查詢,還可根據多個字段分組。當需功能:先按字段分組,再進展查詢,還可根據多個字段分組。當需 要分組滿足某條件時才檢索,可用要分組滿足某條件時才檢索,可用Having子句來限定分組。子句來限定分組。3ORDER BY 字段名字段名1ASC|DESC,字段名,字段名2ASC|DESC 闡明:可以指定排序方式為升序或降序闡明:可以指定排序方式為升序或降序 允許按

11、一列或多列排序允許按一列或多列排序6、顯示部分記錄、顯示部分記錄 1只顯示前幾項記錄只顯示前幾項記錄 top n,n的取值范圍是的取值范圍是132767 2顯示前百分子多少顯示前百分子多少top n percent ,n的取值范圍是的取值范圍是199 注:以上兩個短語要與注:以上兩個短語要與order by 短語同時運用才有效。短語同時運用才有效。7、查詢結果的輸出:、查詢結果的輸出:1輸出到暫時表中:輸出到暫時表中:into cursor 表名表名 a) 執行完執行完select 語句后語句后,暫時表依然堅持翻開和活動形狀暫時表依然堅持翻開和活動形狀,但為只讀。但為只讀。 b) 一旦封鎖暫時

12、表,查詢結果那么自動被刪除。一旦封鎖暫時表,查詢結果那么自動被刪除。2輸出到永久表中:輸出到永久表中:into dbf / table 表名表名 執行完執行完select 語句后,此表依然處于翻開和活動形狀。語句后,此表依然處于翻開和活動形狀。3輸出到數組中:輸出到數組中: into array 數組名數組名 這里的數組為二維數組,每行一條記錄,每列對應查詢結果的一列。這里的數組為二維數組,每行一條記錄,每列對應查詢結果的一列。4輸出到文本文件中:輸出到文本文件中:to file 文本文件名文本文件名 擴展名為擴展名為 .txt,無格式僅是純文本。無格式僅是純文本。8、SQL的幾點闡明:的幾點

13、闡明:1查詢中生成新的字段名時用查詢中生成新的字段名時用AS ,但,但AS可以省略。可以省略。2where 后面可以用表達式,假設用字段名,字段名必需是原表中的字段后面可以用表達式,假設用字段名,字段名必需是原表中的字段 名,不能是用名,不能是用AS產生的字段名。產生的字段名。3order by 排序和排序和 group by 分組分組,后面可以用字段名后面可以用字段名,字段名可以是原表字段名可以是原表 中的字段名,也可以是用中的字段名,也可以是用AS產生的新字段名產生的新字段名,但不能用表達式。但不能用表達式。 4order by 排序和排序和 group by 分組時的字段名可以用字段名的

14、位置號替代分組時的字段名可以用字段名的位置號替代附加附加:給學生講一下內外層相互關嵌套給學生講一下內外層相互關嵌套,ANY|SOME|ALL和和NOT EXSIST查詢查詢二、二、SQL的數據庫操作功能的數據庫操作功能1、插入記錄、插入記錄insert into 表名表名(字段名字段名1,字段名,字段名2,) values (表達式表達式1,表達式,表達式2,)Insert into 表名表名 from array 數組名數組名功能:假設要向當前表一切字段中插入一切值,那么字段名列表可以省略;表功能:假設要向當前表一切字段中插入一切值,那么字段名列表可以省略;表達達 式的值必需與原表的字段類型

15、一樣。式的值必需與原表的字段類型一樣。2、刪除記錄、刪除記錄(邏輯刪除邏輯刪除)delete from 表名表名 where 3、有規律的修正記錄或交換記錄、有規律的修正記錄或交換記錄 update 表名表名 set 要修正的字段名要修正的字段名=表達式表達式 where 闡明:闡明:update假設不帶條件,表示修正字段名的一切值,假設帶條件,表示假設不帶條件,表示修正字段名的一切值,假設帶條件,表示 修正字段中滿足條件的記錄的值。修正字段中滿足條件的記錄的值。4、數據定義、數據定義1建立自在表建立自在表 CREATE TABLE 表名表名 字段名字段名1 類型寬度,小數位數,類型寬度,小數

16、位數, 注:類型只能用代表字符。注:類型只能用代表字符。2建立數據庫表設置字段有效性建立數據庫表設置字段有效性 格式:格式: a) 先建立數據庫或翻開數據庫先建立數據庫或翻開數據庫 b) create table 表名表名 (字段名字段名1 類型類型(寬度,小數位數寬度,小數位數) check 條件條件 error 字符串字符串 default 默許值默許值 ,) 闡明:闡明: check 表示建立規那么表示建立規那么 error 表示出錯信息表示出錯信息 Default 表示默許值表示默許值3建立索引建立索引 給那個字段名建立索引,在定義表構造時在字段名后加不同的短語即可給那個字段名建立索引

17、,在定義表構造時在字段名后加不同的短語即可 primary key 表示建立主索引表示建立主索引 unique 表示建立候選索引表示建立候選索引5、修正表構造、修正表構造1修正字段名修正字段名 alter table 表名表名 rename column(此短語可省略此短語可省略) 原字段名原字段名 to 新字段名新字段名2修正字段的寬度和類型修正字段的寬度和類型 alter table 表名表名 alter 字段名字段名 類型寬度,小數位數類型寬度,小數位數3添加字段名添加字段名 alter table 表名表名 add column 字段名字段名 類型寬度,小數位數類型寬度,小數位數4刪除字段名刪除字段名 alter table 表名表名 drop column 字段名字段名5修正字段有效性規那么及提示信息修正字段有效性規那么及提示信息 alter table 表名表名 alter 字段名字段名 set check 條件條件 error 字符串字符串6刪除字段有效性刪除字段有效性 alter table 表名表名 alter 字段名字段名 drop check7建立索引建立索引 alter table

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論