數(shù)據(jù)庫2|SQL語法知識(1):基本增刪改查

今天是5.6號。

主要介紹單一表的一些基本操作,多個表連接以及函數(shù)在下一部分介紹。


一、基本操作

(1).select(查詢)

SELECT CustomerName,City FROM Customers;
SELECT * FROM Customers;

(2).select distinct
在表中,一個列可能會包含多個重復值,有時您也許希望僅僅列出不同(distinct)的值。

SELECT DISTINCT column_name,column_name 
FROM table_name;

(3).where 條件子句
用于提取那些滿足指定標準的記錄。

SELECT * FROM Customers WHERE Country='Mexico';
1.png

AND & OR 運算符用于基于一個以上的條件對記錄進行過濾,例如:

SELECT * FROM Customers
WHERE Country='Germany' AND City='Berlin';

(4).order by(排序)
ORDER BY 關鍵字用于對結(jié)果集按照一個列或者多個列進行排序,默認按照升序?qū)τ涗涍M行排序。如果需要按照降序?qū)τ涗涍M行排序,您可以使用 DESC 關鍵字。

SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;

(5).insert into(插入值)
INSERT INTO 語句用于向表中插入新記錄。

INSERT INTO table_name(column1,column2,column3,...)
VALUES (value1,value2,value3,...);
#也可以不指定列名,直接插入值,但建議還是寫上。

(6).update(更新)
用于更新表中已存在的記錄。

UPDATE Customers 
SET ContactName='Alfred Schmidt', City='Hamburg'
WHERE CustomerName='Alfreds Futterkiste';
#若不提供where條件,則會將數(shù)據(jù)庫中所有的行記錄全部更新。

(7)delete(刪除行)
用于刪除表中的行。

DELETE FROM  table_name
WHERE some_column=some_value;
#如果省略了 where 子句,所有的記錄都將被刪除!

二、其他操作

(1)limit
規(guī)定要返回的記錄的數(shù)目

SELECT column_name(s) 
FROM table_name
LIMIT number;
#limit的用法只適用于mysql,其他數(shù)據(jù)庫的語法稍有不同。

(2)通配符
通配符可用于替代字符串中的任何其他字符,一般與like操作符一起使用。

2.png

(3)LIKE 操作符
LIKE 操作符用于在where子句中搜索列中的指定模式。

#選取 City 以字母 "ber" 開始的所有客戶:
SELECT * FROM Customers  
WHERE City LIKE 'ber%';

#選取 City 以一個任意字符開始,然后是 "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]%';

(4).in
IN 操作符允許在 WHERE 子句中規(guī)定多個值。

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);

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

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

請注意,在不同的數(shù)據(jù)庫中,BETWEEN 操作符會產(chǎn)生不同的結(jié)果!
在某些數(shù)據(jù)庫中,BETWEEN 選取介于兩個值之間但不包括兩個測試值的字段。
在某些數(shù)據(jù)庫中,BETWEEN 選取介于兩個值之間且包括兩個測試值的字段。
在某些數(shù)據(jù)庫中,BETWEEN 選取介于兩個值之間且包括第一個測試值但不包括最后一個測試值的字段。
因此,請檢查您的數(shù)據(jù)庫是如何處理 BETWEEN 操作符!

(6).別名
可以為表名稱或列名稱指定別名(Alias)。

SELECT o.OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders AS o
WHERE c.CustomerName='Alfreds Futterkiste';

在查詢中涉及超過一個表,或者列名稱很長或者可讀性差時會很有用。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容