freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

wifaaasql語(yǔ)句教程-全文預(yù)覽

  

【正文】 e_Information 表格store_name Sales Date San Diego $250 Jan071999 Boston $700 Jan081999進(jìn)階SQL在這一部分,我們將介紹以下的 SQL 概念及關(guān)鍵字: SQL UNION SQL UNION ALL SQL INTERSECT SQL MINUS SQL Subquery SQL EXISTS SQL CASE 我們并介紹如何用 SQL 來(lái)做出以下的運(yùn)算: 排名 (Rank) 中位數(shù) (Median) 累積總計(jì) (Running Total) 總合百分比 (Percent to Total) 累積總合百分比 (Cumulative Percent to Total) UNIONUNION 指令的目的是將兩個(gè) SQL 語(yǔ)句的結(jié)果合并起來(lái)。這語(yǔ)法如下: UPDATE 表格SET 欄位1 = [值1], 欄位2 = [值2]WHERE {條件} DELETE FROM在某些情況下,我們會(huì)需要直接由數(shù)據(jù)庫(kù)中去除一些資料。這個(gè)指令的語(yǔ)法是: UPDATE 表格名SET 欄位1 = [新值]WHERE {條件} 最容易了解這個(gè)語(yǔ)法的方式是透過(guò)一個(gè)例子。yyyy39。這整句 SQL 也可以含有 WHERE、 GROUP BY、及 HAVING 等子句,以及表格連接及別名等等。) 第二種 INSERT INTO 能夠讓我們一次輸入多筆的資料。我們就打入以下的 SQL 語(yǔ)句: INSERT INTO Store_Information (store_name, Sales, Date)VALUES (39。一種是一次輸入一筆,另一種是一次輸入好幾筆。在這個(gè)指令之下,表格中的資料會(huì)完全消失,可是表格本身會(huì)繼續(xù)存在。 DROP TABLE 的語(yǔ)法是: DROP TABLE 表格名 我們?nèi)绻宄谏弦豁?yè)中建立的顧客表格,我們就鍵入: DROP TABLE customer. TRUNCATE TABLE 有時(shí)候我們會(huì)需要清除一個(gè)表格中的所有資料。這可以用以下的指令達(dá)成: ALTER table customer modify Addr char(30) 這個(gè)指令執(zhí)行后的表格架構(gòu)是: customer 表格 欄位名稱(chēng)資料種類(lèi)First_Namechar(50)Last_Namechar(50)Addrchar(30)Citychar(50)Countrychar(25)Birth_DatedateGenderchar(1)最后,我們要?jiǎng)h除 Gender 欄位。 ALTER TABLE 的語(yǔ)法如下: ALTER TABLE table_name[改變方式] [改變方式] 的詳細(xì)寫(xiě)法會(huì)依我們想要達(dá)到的目標(biāo)而有所不同。因此,在下指令前,請(qǐng)先由數(shù)據(jù)庫(kù)使用手冊(cè)中確認(rèn)正確的語(yǔ)法。建立索引的語(yǔ)法如下: CREATE INDEX INDEX_NAME ON TABLE_NAME (COLUMN_NAME)現(xiàn)在假設(shè)我們有以下這個(gè)表格, TABLE Customer(First_Name char(50),Last_Name char(50),Address char(50),City char(50),Country char(25),Birth_Date date)若我們要在 Last_Name 這個(gè)欄位上建一個(gè)索引,我們就打入以下的指令,CREATE INDEX IDX_CUSTOMER_LAST_NAMEon CUSTOMER (Last_Name)我們要在 City 及 Country 這兩個(gè)欄位上建一個(gè)索引,我們就打入以下的指令,CREATE INDEX IDX_CUSTOMER_LOCATIONon CUSTOMER (City, Country)索引的命名并沒(méi)有一個(gè)固定的方式。若有適當(dāng)?shù)乃饕嬖?,?shù)據(jù)庫(kù)系統(tǒng)就可以先由這個(gè)索引去找出需要的資料是在表格的什么地方,然后直接去那些地方抓資料。 從數(shù)據(jù)庫(kù)表格中尋找資料也是同樣的原理。舉例來(lái)說(shuō),假設(shè)我們要在一本園藝書(shū)中找如何種植青椒的訊息。在這個(gè)情況下,使用者就可以直接由一個(gè)視觀表中找出她要的信息,而不需要由兩個(gè)不同的表格中去做一次連接的動(dòng)作。它跟表格的不同是,表格中有實(shí)際儲(chǔ)存資料,而視觀表是建立在表格之上的一個(gè)架構(gòu),它本身并不實(shí)際儲(chǔ)存資料。這里假設(shè) ORDERS 表格已經(jīng)被建置,而外來(lái)鍵尚未被指定: MySQL: ALTER TABLE ORDERS ADD FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid)。 以下列出幾個(gè)在建置 ORDERS 表格時(shí)指定外來(lái)鍵的方式: MySQL: CREATE TABLE ORDERS (Order_ID integer, Order_Date date, Customer_SID integer, Amount double, Primary Key (Order_ID), Foreign Key (Customer_SID) references CUSTOMER(SID))。在這里,我們就會(huì)在 ORDERS 表格中設(shè)定一個(gè)外來(lái)鍵,而這個(gè)外來(lái)鍵是指向 CUSTOMER 表格中的主鍵。外來(lái)鍵的目的是確定資料的參考完整性(referential integrity)。 Oracle: ALTER TABLE Customer ADD PRIMARY KEY (SID)。 以下舉幾個(gè)在建置新表格時(shí)設(shè)定主鍵的方式: MySQL: CREATE TABLE Customer (SID integer, Last_Name varchar(30), First_Name varchar(30), PRIMARY KEY (SID))。主鍵可以是原本資料內(nèi)的一個(gè)欄位,或是一個(gè)人造欄位 (與原本資料沒(méi)有關(guān)系的欄位)。 請(qǐng)注意,CHECK 限制目前尚未被執(zhí)行于 MySQL 數(shù)據(jù)庫(kù)上。相對(duì)來(lái)說(shuō),一個(gè) UNIQUE 的欄位并不一定會(huì)是一個(gè)主鍵。 UNIQUE UNIQUE 限制是保證一個(gè)欄位中的所有資料都是有不一樣的值。 常見(jiàn)的限制有以下幾種: NOT NULL UNIQUE CHECK 主鍵 (Primary Key) 外來(lái)鍵 (Foreign Key) 以下對(duì)這幾種限制分別做個(gè)介紹: NOT NULL 在沒(méi)有做出任何限制的情況下,一個(gè)欄位是允許有 NULL 值得。 這個(gè)欄位的資料種類(lèi)是 char(50)──代表這是一個(gè) 50 個(gè)字符的字符串)。)、或甚至是以二進(jìn)法 (binary) 的狀態(tài)存在。它可能是一個(gè)整數(shù) (例如 1),、一個(gè)實(shí)數(shù) (例如 )、一個(gè)字符串 (例如 39。每一列代表一筆資料,而每一欄代表一筆資料的一部份。在絕大部份的情況下,數(shù)據(jù)庫(kù)廠商不可能知道您需要如何儲(chǔ)存您的資料,所以通常您會(huì)需要自己在數(shù)據(jù)庫(kù)中建立表格。)。 結(jié)果: 39。Sample39。 例 1: SELECT TRIM(39。 這個(gè)函數(shù)將把 [要移除的字符串] 從字符串的起頭、結(jié)尾,或是起頭及結(jié)尾移除。an D39。s Angeles39。 SUBSTR(str,pos,len): 由str中的第pos位置開(kāi)始,選出接下去的len個(gè)字符。East Boston39。 39。Boston39。EastBoston39。 來(lái)看一個(gè)例子。請(qǐng)注意,Oracle的CONCAT()只允許兩個(gè)參數(shù);換言之,一次只能將兩個(gè)字符串串連起來(lái)。在這一個(gè)例子中, 39。New York39。 外部連接的語(yǔ)法是依數(shù)據(jù)庫(kù)的不同而有所不同的。在這個(gè)例子中,笛卡兒連接會(huì)讓我們得到 4 x 4 = 16 行的結(jié)果。在這里,我們要確認(rèn) Geography 表格中 store_name 欄位的值與 Store_Information 表格中 store_name 欄位的值是相等的。若我們沒(méi)有用表格別名的話(huà),第一行就會(huì)變成 SELECT REGION, SUM() SALES 很明顯地,這就復(fù)雜多了。若我們要知道每一區(qū)的營(yíng)業(yè)額,我們需要將這兩個(gè)不同表格中的資料串聯(lián)起來(lái)。 表格鏈接現(xiàn)在我們介紹連接(join)的概念。這是運(yùn)用欄位別名的結(jié)果。 我們先來(lái)看一下欄位別名和表格別名的語(yǔ)法: SELECT 表格別名.欄位1 欄位別名 FROM 表格名 表格別名 基本上,這兩種別名都是放在它們要替代的物件后面,而它們中間由一個(gè)空白分開(kāi)。 第二種別名是表格別名。 簡(jiǎn)單地來(lái)說(shuō),欄位別名的目的是為了讓 SQL 產(chǎn)生的結(jié)果易讀。一個(gè)含有 HAVING 子句的 SQL 并不一定要包含 GROUP BY 子句。 HAVING那我們?nèi)绾螌?duì)函數(shù)產(chǎn)生的值來(lái)設(shè)定條件呢?舉例來(lái)說(shuō),我們可能只需要知道哪些店的營(yíng)業(yè)額有超過(guò) $1,500。第二,我們需要確認(rèn)所有的 sales 都要依照各個(gè) store_name 來(lái)分開(kāi)算。它的語(yǔ)法是: SELECT COUNT(欄位名) FROM 表格名 舉例來(lái)說(shuō),若我們要找出我們的范例表格中有幾筆 store_name 欄不是空白的資料時(shí), Store_Information 表格store_name Sales Date Los Angeles $1500 Jan051999 San Diego $250 Jan071999 Los Angeles $300 Jan081999 Boston $700 Jan081999 我們就鍵入,SELECT COUNT(store_name) FROM Store_Information WHERE store_name is not NULL 結(jié)果: Count(store_name) 4 is not NULL 是 這個(gè)欄位不是空白 的意思。不同的數(shù)據(jù)庫(kù)對(duì)這些函數(shù)有不同的語(yǔ)法,所以最好是參考您所用數(shù)據(jù)庫(kù)的信息,來(lái)確定在那個(gè)數(shù)據(jù)庫(kù)中,這些函數(shù)是如何被運(yùn)用的。在上面這個(gè)例子中,我們用以下這句 SQL 可以達(dá)到完全一樣的效果: SELECT store_name, Sales, Date FROM Store_Information ORDER BY 2 DESC 函數(shù)既然數(shù)據(jù)庫(kù)中有許多資料都是已數(shù)字的型態(tài)存在,一個(gè)很重要的用途就是要能夠?qū)@些數(shù)字做一些運(yùn)算,例如將它們總合起來(lái),或是找出它們的平均值。若有好幾筆資料 欄位一 的值相等,那這幾筆資料就依據(jù) 欄位二 由小往大排。 ASC 代表結(jié)果會(huì)以由小往大的順序列出,而 DESC 代表結(jié)果會(huì)以由大往小的順序列出。這可能是由小往大 (ascending) 或是由大往小(descending)。結(jié)果: store_name Sales Date LOS ANGELES $1500 Jan051999 SAN FRANCISCO $300 Jan081999 SAN DIEGO $250 Jan071999 ORDER BY到目前為止,我們已學(xué)到如何藉由 SELECT 及 WHERE 這兩個(gè)指令將資料由表格中抓出。SAN FRANCISCO39。這個(gè)模式的字符串。 39。WXYZ39。: 所有以 39。ABCABC39。 起頭的字符串。 39。A2Z39。 為結(jié)尾的字符串。: 所有以 39?;旧?, LIKE 能讓我們依據(jù)一個(gè)模式 (pattern) 來(lái)找出我們要的資料。Jan10199939。 這將選出欄位值包含在值一及值二之間的每一筆資料。BETWEEN 這個(gè)子句的語(yǔ)法如下: SELECT 欄位名 FROM 表格名 WHERE 欄位名 BETWEEN 39。Los Angeles39。值可以是數(shù)目或是文字。值一39。另外,我們可以用 () 來(lái)代表?xiàng)l件的先后次序。復(fù)雜條件是由二或多個(gè)簡(jiǎn)單條件透過(guò) AND 或是 OR 的連接而成。就我們的例子來(lái)說(shuō),我們可能只要抓出營(yíng)業(yè)額超過(guò) $1,000 的資料。這要如何達(dá)成呢?在 SQL 中,這是很容易做到的。 DISTINCTSELECT 指令讓我們能夠讀取表格中一個(gè)或數(shù)個(gè)欄位的所有資料。(表格是一個(gè)數(shù)據(jù)庫(kù)內(nèi)的結(jié)構(gòu),它的目的是儲(chǔ)存資料。筆者本身的經(jīng)驗(yàn)是,雖然要對(duì) SQL 有很透徹的了解并不是一朝一夕可以完成的,可是要對(duì) SQL 有個(gè)基本的了解并不難。 ? SQL 語(yǔ)法: 這一頁(yè)列出所有在這個(gè)教材中被提到的 SQL 語(yǔ)法。無(wú)論您是一位 SQL 的新手,或是一位只是需要對(duì) SQL 復(fù)習(xí)一下的資料倉(cāng)儲(chǔ)業(yè)界老將,您就來(lái)對(duì)地方了。 ? 進(jìn)階 SQL: 介紹 SQL 進(jìn)階概念,以及如何用 SQL 來(lái)執(zhí)行一些較復(fù)雜的運(yùn)算。另外,您將能夠正確地運(yùn)用 SQL 來(lái)由數(shù)據(jù)庫(kù)中獲取信息。從這一句回答中,我們馬上可以看到兩個(gè)關(guān)鍵字: 從 (FROM) 數(shù)據(jù)庫(kù)中的表格內(nèi)選出 (SELECT)。假設(shè)我們有以下這個(gè)表格: store_name Sales Date Los Angeles $1500 Jan051999 San Diego $250 Jan071999 Los Angeles $300 Jan0
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1