數(shù)據(jù)庫:SQL常用操作

從功能上劃分官扣,SQL 語言可以分為DDL(Data Definition Language),DML(Data Manipulation Language)和DCL(Data Control Language)三大類厅贪。

1.DDL數(shù)據(jù)定義

用于定義和管理 SQL 數(shù)據(jù)庫中的所有對(duì)象的語言 :
CREATE---創(chuàng)建表
ALTER---修改表,在已有的表中添加、修改或刪除列堤结。
DROP---刪除表

#CREATE---創(chuàng)建表
CREATE TABLE Persons
(
  Name varchar(255),
  ID int,
  Grade varchar(255)
)
#ALTER---修改表
#增加表中列
ALTER TABLE table_name
ADD column_name datatype
#刪除表中的列
ALTER TABLE table_name 
DROP COLUMN column_name
#改變表中列的數(shù)據(jù)類型
ALTER TABLE table_name
ALTER COLUMN column_name datatype
#DROP---刪除表
DROP TABLE Customer;

2.DML 數(shù)據(jù)操作

SQL中處理數(shù)據(jù)等操作統(tǒng)稱為數(shù)據(jù)操縱語言 :
INSERT---數(shù)據(jù)的插入
DELETE---數(shù)據(jù)的刪除
UPDATE---數(shù)據(jù)的修改
SELECT---數(shù)據(jù)的查詢

數(shù)據(jù)查詢SELECT

#從數(shù)據(jù)庫中提取數(shù)據(jù)
SELECT CustomerName,City FROM Customers;
SELECT * FROM Customers;
select distinct
 #在表中,一個(gè)列可能會(huì)包含多個(gè)重復(fù)值鸭丛,有時(shí)您也許希望僅僅列出不同(distinct)的值竞穷。
SELECT DISTINCT column_name,column_name FROM table_name;
#where 條件子句
#用于提取那些滿足指定標(biāo)準(zhǔn)的記錄。
SELECT * FROM Customers WHERE Country='Mexico';

#limit規(guī)定要返回的記錄的數(shù)目
SELECT column_name(s) 
FROM table_name
LIMIT number;

數(shù)據(jù)插入INSERT

INSERT INTO table_name VALUES (value1, value2,....)
#指定所要插入數(shù)據(jù)的列:
INSERT INTO table_name (column_name1, column_name2,...) VALUES (value1, value2,....)

數(shù)據(jù)更新UPDATE

UPDATE table_name SET column_name = newvalue WHERE column_name = value
#更新某一行中的一個(gè)列
UPDATE Person SET column =newvalue WHERE row = value

數(shù)據(jù)刪除DELETE

#刪除表中的行鳞溉。
DELETE FROM table_name WHERE rowname = value
#刪除所有行
DELETE FROM table_name
#或者:
DELETE * FROM table_name

復(fù)雜語句

AND/OR

SELECT column_name
FROM table_name
WHERE "簡(jiǎn)單條件" 
{[AND|OR] "簡(jiǎn)單條件"}+;
#{}+ 代表{}之內(nèi)的情況會(huì)發(fā)生一或多次瘾带。在這里的意思就是 AND 加簡(jiǎn)單條件及 OR 加簡(jiǎn)單條件的情況可以發(fā)生一或多次。另外熟菲,我們可以用 ( ) 來代表?xiàng)l件的先后次序看政。

LIKE

# LIKE 操作符用于在where子句中搜索列中的指定模式。
#選取 City 以字母 "ber" 開始的所有客戶:
SELECT * FROM Customers  
WHERE City LIKE 'ber%';
#選取 City 以一個(gè)任意字符開始科盛,然后是 "erlin" 的所有客戶:
SELECT * FROM Customers
WHERE City LIKE '_erlin';
#選取 City 以 "b"帽衙、"s" 或 "p" 開始的所有客戶:
SELECT * FROM Customers
WHERE City LIKE '[bsp]%';
#選取 City 不以 "b"、"s" 或 "p" 開始的所有客戶:
SELECT * FROM Customers
WHERE City LIKE '[!bsp]%';

IN

 #IN 操作符允許在 WHERE 子句中規(guī)定多個(gè)值贞绵。
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);

BETWEEN

# 在 WHERE 子句中厉萝,BETWEEN 操作符用于選取介于兩個(gè)值之間的數(shù)據(jù)范圍內(nèi)的值,這些值可以是數(shù)值榨崩、文本或者日期谴垫。

#選取價(jià)格不再 10 和 20 之間的所有產(chǎn)品:
SELECT * FROM Products
WHERE Price NOT BETWEEN 10 AND 20;

ORDER BY

#這可能是由小往大 (ascending) 或是由大往小 (descending)。在這種情況下母蛛,我們就可以運(yùn)用 ORDER BY這個(gè)指令來達(dá)到我們的目的翩剪。

#ORDER BY 的語法如下:

SELECT "欄位名" 
FROM "表格名" 
[WHERE "條件"]
ORDER BY "欄位名" [ASC, DESC];**

ORDER BY "欄位一" [ASC, DESC], "欄位二" [ASC, DESC]**

SELECT Store_Name, Sales, Txn_Date 
FROM Store_Information 
ORDER BY Sales DESC;

3.DCL數(shù)據(jù)控制

用來授予或回收訪問數(shù)據(jù)庫的某種特權(quán),并控制 數(shù)據(jù)庫操縱事務(wù)發(fā)生的時(shí)間及效果彩郊,對(duì)數(shù)據(jù)庫實(shí)行監(jiān)視等:
GRANT--- 授權(quán)
ROLLBACK---回滾
COMMIT--- 提交

提交數(shù)據(jù)有三種類型:顯式提交前弯、隱式提交及自動(dòng)提交蚪缀。
(1) 顯式提交 用 COMMIT 命令直接完成的提交為顯式提交。
(2) 隱式提交 用 SQL 命令間接完成的提交為隱式提交恕出。這些命令是: ALTER 询枚, AUDIT , COMMENT 浙巫, CONNECT 金蜀, CREATE , DISCONNECT 的畴, DROP 渊抄, EXIT , GRANT 丧裁, NOAUDIT 护桦, QUIT , REVOKE 煎娇, RENAME 嘶炭。
(3) 自動(dòng)提交 若把 AUTOCOMMIT 設(shè)置為 ON ,則在插入逊桦、修改、刪除語句執(zhí)行后抑进,系統(tǒng)將自動(dòng)進(jìn)行提交强经,這就是自動(dòng)提交。其格式為: SQL>SET AUTOCOMMIT ON 寺渗;

數(shù)據(jù)運(yùn)算

既然數(shù)據(jù)庫中有許多資料都是已數(shù)字的型態(tài)存在匿情,一個(gè)很重要的用途就是要能夠?qū)@些數(shù)字做一些運(yùn)算,例如將它們總合起來信殊,或是找出它們的平均值炬称。SQL 有提供一些這一類的函數(shù)。它們是:

AVG (平均)
COUNT (計(jì)數(shù))
MAX (最大值)
MIN (最小值)
SUM (總合)
運(yùn)用函數(shù)的語法是:

SELECT "函數(shù)名"("欄位名") 
FROM "表格名";

SELECT COUNT("欄位名") 
FROM "表格名";


#HAVING 的語法如下:
SELECT "欄位1", SUM("欄位2") 
FROM "表格名" 
GROUP BY "欄位1" 
HAVING (函數(shù)條件);

#UNION指令的目的是將兩個(gè) SQL 語句的結(jié)果合并起來涡拘。從這個(gè)角度來看玲躯, UNION跟 JOIN有些許類似,因?yàn)檫@兩個(gè)指令都可以由多個(gè)表格中擷取資料鳄乏。 UNION 的一個(gè)限制是兩個(gè) SQL 語句所產(chǎn)生的欄位需要是同樣的資料種類跷车。

UNION 的語法如下:
[SQL 語句 1]
UNION
[SQL 語句 2];
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市橱野,隨后出現(xiàn)的幾起案子朽缴,更是在濱河造成了極大的恐慌,老刑警劉巖水援,帶你破解...
    沈念sama閱讀 217,542評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件密强,死亡現(xiàn)場(chǎng)離奇詭異茅郎,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)或渤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門系冗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人劳坑,你說我怎么就攤上這事毕谴。” “怎么了距芬?”我有些...
    開封第一講書人閱讀 163,912評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵涝开,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我框仔,道長(zhǎng)舀武,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評(píng)論 1 293
  • 正文 為了忘掉前任离斩,我火速辦了婚禮银舱,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘跛梗。我一直安慰自己寻馏,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評(píng)論 6 392
  • 文/花漫 我一把揭開白布核偿。 她就那樣靜靜地躺著诚欠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪漾岳。 梳的紋絲不亂的頭發(fā)上轰绵,一...
    開封第一講書人閱讀 51,370評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音尼荆,去河邊找鬼左腔。 笑死,一個(gè)胖子當(dāng)著我的面吹牛捅儒,可吹牛的內(nèi)容都是我干的液样。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼野芒,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼蓄愁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起狞悲,我...
    開封第一講書人閱讀 39,074評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤撮抓,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后摇锋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體丹拯,經(jīng)...
    沈念sama閱讀 45,505評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡站超,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了乖酬。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片死相。...
    茶點(diǎn)故事閱讀 39,841評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖咬像,靈堂內(nèi)的尸體忽然破棺而出算撮,到底是詐尸還是另有隱情,我是刑警寧澤县昂,帶...
    沈念sama閱讀 35,569評(píng)論 5 345
  • 正文 年R本政府宣布肮柜,位于F島的核電站,受9級(jí)特大地震影響倒彰,放射性物質(zhì)發(fā)生泄漏审洞。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評(píng)論 3 328
  • 文/蒙蒙 一待讳、第九天 我趴在偏房一處隱蔽的房頂上張望芒澜。 院中可真熱鬧,春花似錦创淡、人聲如沸痴晦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽阅酪。三九已至,卻和暖如春汁针,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背砚尽。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工施无, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人必孤。 一個(gè)月前我還...
    沈念sama閱讀 47,962評(píng)論 2 370
  • 正文 我出身青樓猾骡,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親敷搪。 傳聞我的和親對(duì)象是個(gè)殘疾皇子兴想,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容