SQL語法參考手冊

2022-11-18 09:30:05 字數 4199 閱讀 8970

瀏覽統計 total:18049 | year:18049 | quarter:18049 | month:5956 | week:867 | today:10

第 1 頁 sql 語法參考手冊 [1]

第 2 頁 sql 語法參考手冊 [2]

第 3 頁 sql 語法參考手冊 [3]

db2 提供了關連式資料庫的查詢語言 sql (structured query language),是一種非常口語化、既易學又易懂的語法。此一語言幾乎是每個資料庫系統都必須提供的,用以表示關連式的*作,包含了資料的定義(ddl)以及資料的處理(dml)。sql原來拼成sequel,這語言的原型以「系統 r「的名字在 ibm 聖荷西實驗室完成,經過ibm內部及其他的許多使用性及效率測試,其結果相當令人滿意,並決定在系統r 的技術基礎發展出來 ibm 的產品。

而且美國國家標準學會(ansi)及國際標準化組織(iso)在1987遵循乙個幾乎是以 ibm sql 為基礎的標準關連式資料語言定義。

一、資料定義 ddl(data definition language)

資料定語言是指對資料的格式和形態下定義的語言,他是每個資料庫要建立時候時首先要面對的,舉凡資料分哪些**關係、**內的有什麼字段主鍵、**和**之間互相參考的關係等等,都是在開始的時候所必須規劃好的。

1、建**:

create table table_name(

column1 datatype [not null] [not null primary key],

column2 datatype [not null],

...)

說明:datatype --是資料的格式,詳見表。

nut null --可不可以允許資料有空的(尚未有資料填入)。

primary key --是本表的主鍵。

2、更改**

alter table table_name

add column column_name datatype

說明:增加乙個字段(沒有刪除某個欄位的語法)。

alter table table_name

add primary key (column_name)

說明:更改表得的定義把某個欄位設為主鍵。

alter table table_name

drop primary key (column_name)

說明:把主鍵的定義刪除。

3、建立索引

create index index_name on table_name (column_name)

說明:對某個**的字段建立索引以增加查詢時的速度。

4、刪除

drop table_name

drop index_name

二、的資料形態 datatypes

smallint

16 位元的整數。

interger

32 位元的整數。

decimal(p,s)

p 精確值和 s 大小的十進位整數,精確值p是指全部有幾個數(digits)大小值,s是指小數

點後有幾位數。如果沒有特別指定,則系統會設為 p=5; s=0 。

float

32位元的實數。

double

64位元的實數。

char(n)

n 長度的字串,n不能超過 254。

varchar(n)

長度不固定且其最大長度為 n 的字串,n不能超過 4000。

graphic(n)

和 char(n) 一樣,不過其單位是兩個字元 double-bytes, n不能超過127。這個形態是為

了支援兩個字元長度的字型,例如中文字。

vargraphic(n)

可變長度且其最大長度為 n 的雙字元字串,n不能超過 2000。

date

包含了年份、月份、日期。

time

包含了小時、分鐘、秒。

timestamp

包含了年、月、日、時、分、秒、千分之一秒。

組合查詢

組合查詢是指所查詢得資料**並不只有單一的**,而是聯合乙個以上的

**才能夠得到結果的。

select *

from table1,table2

where

說明:1.查詢兩個**中其中 column1 值相同的資料。

2.當然兩個**相互比較的字段,其資料形態必須相同。

3.乙個複雜的查詢其動用到的**可能會很多個。

整合性的查詢:

select count (*)

from table_name

where column_name = ***

說明:查詢符合條件的資料共有幾筆。

select sum(column1)

from table_name

說明:1.計算出總和,所選的字段必須是可數的數字形態。

2.除此以外還有 **g() 是計算平均、max()、min()計算最大最小值的整合性查詢。

select column1,**g(column2)

from table_name

group by column1

h**ing **g(column2) > ***

說明:by: 以column1 為一組計算 column2 的平均值必須和 **g、sum等整合性查詢的關鍵字

一起使用。

: 必須和 group by 一起使用作為整合性的限制。

複合性的查詢

select *

from table_name1

where exists (

select *

from table_name2

where conditions )

說明:的 conditions 可以是另外乙個的 query。

在此是指存在與否。

select *

from table_name1

where column1 in (

select column1

from table_name2

where conditions )

說明:1. in 後面接的是乙個集合,表示column1 存在集合裡面。

2. select 出來的資料形態必須符合 column1。

其他查詢

select *

from table_name1

where column1 like 』x%』

說明:like 必須和後面的』x%』 相呼應表示以 x為開頭的字串。

select *

from table_name1

where column1 in (』***』,』yyy』,..)

說明:in 後面接的是乙個集合,表示column1 存在集合裡面。

select *

from table_name1

where column1 between xx and yy

說明:between 表示 column1 的值介於 xx 和 yy 之間。

3、更改資料:

update table_name

set column1=』***』

where conditoins

說明:1.更改某個字段設定其值為』***』。

是所要符合的條件、若沒有 where 則整個 table 的那個欄位都會全部被更改。

4、刪除資料:

delete from table_name

where conditions

說明:刪除符合條件的資料。

說明:關於where條件後面如果包含有日期的比較,不同資料庫有不同的表示式。具體如下:

(1)如果是access資料庫,則為:where mydate>#2000-01-01#

(2)如果是oracle資料庫,則為:where mydate>cast(』2000-01-01』 as date)

或:where mydate>to_date(』2000-01-01』,』yyyy-mm-dd』)

在delphi中寫成:

thedate=』2000-01-01』;

* from abc where mydate>cast(』+』』』』+thedate+』』』』+』 as date)』);

如果比較日期時間型,則為:

where mydatetime>to_date(』2000-01-01 10:00:01』,』yyyy-mm-dd hh24:mi:ss』)

SQL語法參考手冊

分類 資料庫應用 通用資料庫應用 db2提供了關連式資料庫的查詢語言 structured query language 是一種非常口語化 既易學又易懂的語法。此一語言幾乎是每個資料庫系統都必須提供的,用以表示關連式的操作,包含了資料的定義 以及資料的處理 sql原來拼成sequel,這語言的原型以...

CV參考手冊

hunnish 注 本翻譯是直接根據 opencv beta 4.0 版本的使用者手冊翻譯的,原檔案是 doc ref opencvref 可以從 sourceforg 上面的 opencv 專案 也可以直接從阿須數碼中 翻譯中肯定有不少錯誤,另外也有些術語和原文語義理解不透導致翻譯不準確或者錯誤,...

APQP CP參考手冊培訓試題

部門姓名 得分一 填空題 10 3分 1 apqp cp參考手冊中文含義是產品質量先期策劃和控制 計畫 其目的是為新產品和更改產品作批量生產前 準備工作。2 apqp cp參考手冊最新版本是 1994 年 6 月發布的,是第一版。3 apqp小組應由技術 製造 材料控制 採購 質量 銷售等部門人員參...