SQL語言基礎 SQL (Structured Query Language:結構化查詢語言) 是用於管理關係資料庫管理系統(RDBMS)。 SQL 的範圍包括數據插入、查詢、更新和刪除,資料庫模式創建和修改,以及數據訪問控制。 本文主要記錄一些主要的SQL命令(比如 SELECT、UPDATE、D ...
SQL語言基礎
SQL (Structured Query Language:結構化查詢語言) 是用於管理關係資料庫管理系統(RDBMS)。 SQL 的範圍包括數據插入、查詢、更新和刪除,資料庫模式創建和修改,以及數據訪問控制。
本文主要記錄一些主要的SQL命令(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)
註意:SQL語句對大小寫不敏感。
基本語句
- WHERE
條件語句,用於提取那些滿足指定條件的記錄
-- 匹配 名字為zzz 的記錄
... WHERE name='zzz'
- AND & OR
運算符,用於基於一個以上的條件對記錄進行過濾
-- 匹配 年齡大於18且性別為M的 記錄
... WHERE age>18 AND gender='M'
-- 匹配 城市是gz或者是sz的 記錄
... WHERE city='gz' OR city='sz'
- ORDER BY
排序關鍵字,用於對結果集進行排序,預設按照升序對記錄進行排序
-- 對匹配記錄中age欄位進行升序排序
... ORDER BY age
-- 對匹配記錄中id欄位進行降序排序
... ORDER BY id DESC
-- 多欄位排序
-- 先對age升序再按照id升序排序
... ORDER BY age, id
- IN
操作符允許在 WHERE 子句中規定多個值。
-- 匹配 名字為a或者b 的記錄
... WHERE name IN ('a', 'b')
-- 匹配 名字不為c或者d 的記錄
... WHERE name NOT IN ('c', 'd')
- BETWEEN
操作符用於選取介於兩個值之間的數據範圍內的值。
-- 匹配 年齡在18-20之間 的記錄
... WHERE age BETWEEN 18 AND 20
-- 匹配 年齡不在18-20之間 的記錄
... WHERE age NOT BETWEEN 18 AND 20
查詢 SELECT
語法:SELECT [column] FORM [table_name]
[column] 欄位名, *為通配符(匹配所有欄位)
[table_name] 表名
-- 查詢students表中所有欄位
SELECT * FROM students
-- 查詢students表中name,age欄位
SELECT name, age FROM students
-- 配合條件查詢 where
-- 查詢students表中age=18的學生name,age欄位
SELECT name, age FROM students WHERE age=18
更新 UPDATE
語法:UPDATE table_name SET column1=value1,column2=value2,...
[table_name] 表名
[column] 欄位名
[value] 更新值
註意:如果UPDATE中省略了WHERE子句,表中所有的記錄都將被更新!以下例子僅為了方便,實際使用時建議配置WHERE子句!
-- 更新students表中所有學生的country欄位
UPDATE students SET country='CN'
-- 更新students表中男學生的country欄位
UPDATE students SET country='CN' WHERE gender='M'
-- 更新多欄位
UPDATE students SET country='CN', age=18
插入 INSERT INTO
語法:INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
[table_name] 表名,與[colum]二選一
[column] 欄位名
[value1] 對應欄位值
-- 將id=1,name=zzz,score=90的學生信息插入students表
INSERT INTO id, name, score VALUES (1, 'zzz', 90)
-- 如果插入欄位與表中欄位是一一對應時,可直接寫表名
INSERT INTO students VALUES (1, 'zzz', 90)
刪除 DELETE
語法:DELETE FORM [table_name]
[table_name] 表名
註意:如果DELETE中省略了WHERE子句,表中所有的記錄都將被刪除!以下例子僅為了方便,實際使用時建議配置WHERE子句!
-- 刪除students表中所有age=18的記錄
DELETE FROM students WHERE age=18
-- 多條件
DELETE FROM students WHERE age=18 AND gender='M'
本文來自博客園,作者:吳知木,轉載請註明原文鏈接:https://www.cnblogs.com/zh1q1/p/16249222.html