SQL語句基礎
阿新 • • 發佈:2017-07-11
-s upd 希望 set sha != font address tro
根據http://www.w3school.com.cn/sql/sql_syntax.asp教程學習, 並在這裏做了筆記。
語法:
SQL 對大小寫不敏感!
如果使用的是 MS Access 和 SQL Server 2000,則不必在每條 SQL 語句之後使用分號,不過某些數據庫軟件要求必須使用分號。
可以把 SQL 分為兩個部分:數據操作語言 (DML) 和 數據定義語言 (DDL)。
SQL (結構化查詢語言)是用於執行查詢的語法。但是 SQL 語言也包含用於更新、插入和刪除記錄的語法。
查詢和更新指令構成了 SQL 的 DML 部分:
-
- SELECT - 從數據庫表中獲取數據
- UPDATE - 更新數據庫表中的數據
- DELETE - 從數據庫表中刪除數據
- INSERT INTO - 向數據庫表中插入數據
SQL 的數據定義語言 (DDL) 部分使我們有能力創建或刪除表格。我們也可以定義索引(鍵),規定表之間的鏈接,以及施加表間的約束。
SQL 中最重要的 DDL 語句:
-
- CREATE DATABASE - 創建新數據庫
- ALTER DATABASE - 修改數據庫
- CREATE TABLE - 創建新表
- ALTER TABLE - 變更(改變)數據庫表
- DROP TABLE - 刪除表
- CREATE INDEX - 創建索引(搜索鍵)
- DROP INDEX - 刪除索引
SELECT列名稱 FROM 表名稱
SELECT *
FROM Persons
SELECT DISTINCT
Company FROM Orders #關鍵詞 DISTINCT 用於返回唯一不同的值。
SELECT 列名稱 FROM 表名稱 WHERE 列 運算符 值
SELECT * FROM Persons WHERE City=‘Beijing‘ #例子中的條件值周圍使用的是單引號。SQL 使用單引號來環繞文本值(大部分數據庫系統也接受雙引號)。如果是數值,請不要使用引號。
操作符 | 描述 |
---|---|
= | 等於 |
<> | 不等於,在某些版本的 SQL 中,操作符 <> 可以寫為 !=。 |
> | 大於 |
< | 小於 |
>= | 大於等於 |
<= | 小於等於 |
BETWEEN | 在某個範圍內 |
LIKE | 搜索某種模式 |
文本值:
這是正確的: SELECT * FROM Persons WHEREFirstName=‘Bush‘
這是錯誤的: SELECT * FROM Persons WHEREFirstName=Bush
數值:
這是正確的: SELECT * FROM Persons WHEREYear>1965
這是錯誤的: SELECT * FROM Persons WHEREYear>‘1965‘
AND 和 OR 可在 WHERE 子語句中把兩個或多個條件結合起來。如果第一個條件和第二個條件都成立,則 AND 運算符顯示一條記錄。如果第一個條件和第二個條件中只要有一個成立,則 OR 運算符顯示一條記錄。
SELECT * FROM Persons WHERE(
FirstName=‘Thomas‘OR
FirstName=‘William‘)
AND
LastName=‘Carter‘ #可以把 AND 和 OR 結合起來(使用圓括號來組成復雜的表達式)
ORDER BY 語句用於根據指定的列對結果集進行排序。ORDER BY 語句默認按照升序對記錄進行排序。如果希望按照降序對記錄進行排序,可以使用 DESC 關鍵字。
SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC #以逆字母順序顯示公司名稱,並以數字順序顯示順序號
INSERT INTO 語句用於向表格中插入新的行
INSERT INTO 表名稱 VALUES (值1, 值2,....)
INSERT INTO Persons VALUES (‘Gates‘, ‘Bill‘, ‘Xuanwumen 10‘, ‘Beijing‘)
也可以指定所要插入數據的列:
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
INSERT INTO Persons (LastName, Address) VALUES (‘Wilson‘, ‘Champs-Elysees‘)
Update 語句用於修改表中的數據。
UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值
UPDATE Person SET Address = ‘Zhongshan 23‘, City = ‘Nanjing‘ WHERE LastName = ‘Wilson‘ #修改地址(address),並添加城市名稱(city)
DELETE 語句用於刪除表中的行
DELETE FROM 表名稱 WHERE 列名稱 = 值
DELETE FROM Person WHERE LastName = ‘Wilson‘
DELETE FROM table_name #在不刪除表的情況下刪除所有的行。這意味著表的結構、屬性和索引都是完整的
或者:
DELETE * FROM table_name #在不刪除表的情況下刪除所有的行。這意味著表的結構、屬性和索引都是完整的
SQL語句基礎