MYSQL详解及语法大全
SQL 語句
1. 什么是 SQL
1.SQL 是 結構化查詢語言,專門用來訪問和處理數據庫的編程語言。能夠讓我們以編程的形式,操作數據庫里面的數據
三個關鍵點:
-
SQL 是一門數據庫編程語言
-
使用 SQL 語言編寫出來的代碼,叫做 SQL 語句
-
SQL 語言只能在關系型數據庫中使用(例如 MySQL、Oracle、SQL Server)。非關系型數據庫(例如 Mongodb)不支持 SQL 語言
2.SQL 的 SELECT 語句
2.1語法介紹
1.SELECT 語句用于從表中查詢數據。執行的結果被存儲在一個結果表中(稱為結果集)。語法格式如下
-- 這是注釋 -- 從from指定的【表中】 查詢出【所有的】數據。*表示【所有列】 SELECT * FROM 表名稱-- 從FROM指定的【表中】查詢出指定列名稱(字段)的數據 SELECT 列名稱 FROM 表名稱2.注意:SQL 語句中的關鍵字對大小寫不敏感。SELECT 等效于 select,FROM 等效于 from
3.注意:在執行語句的時候,需要選擇默認的數據庫,雙擊選擇指定的數據庫即可
2.2演示兩種 SELECT 語句
1.查詢所有列寫法
從 users 表中選取所有的列,可以使用符號 * 取代列的名稱
案例代碼
-- 通過 * 把 users 表中的所有的數據查詢出來select * from users?2.SELECT 列名稱 示例
如需獲取名為 username 和 password 的列的內容(從名為 users 的數據庫表),請使用下面的 SELECT 語句
案例代碼
-- 多列之間,使用英文逗號進行分隔select username, password from users3.SQL 的 INSERT INTO 語句
1.語法
INSERT INTO 語句用于向數據表中插入新的數據行,語法格式如下:
--語法解讀 向指定的表中,插入如下幾列數據,列的值通過value 指定 --注意 : 列和值要一一對應 多個列和多個值之間 用英文的逗號隔開 INSERT INTO 表名 (列一 , 列二 ...) VALUE (值一 , 值二 ...) -- 推薦使用下面這種插入數據的方法,它結構更加清晰 INSERT INTO 表名 SET 字段1 = 值1,字段1 = 值1,字段1 = 值1;2.案例代碼
注意:新的數據需要加上引號,否則會報錯
insert into users (username, password) values ('mz', '123456')4. SQL 的 UPDATE 語句
1.語法
Update 語句用于修改表中的數據。語法格式如下
-- 語法解讀 -- 1.用UPDATE 指定要更新哪個表中的數據 -- 2.用set 指定列對應的新值 -- 3.用WHERE 指定更新的條件 UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值2.案例代碼
1.多個被更新的列之間, 使用英文的逗號進行分隔
2.where 后面跟著的是更新的條件
3.注意: 我們經常忘記提供更新的 where 條件,這樣會導致整張表的數據都被更新,一定要慎重
update users set password=654321 where id=45.SQL 的 DELETE 語句
1.語法
DELETE 語句用于刪除表中的行
-- 語法解讀 -- 從指定的表中 根據WHERE條件刪除對應的數據行 DELETE FROM 表名稱 WHERE 列名稱 = 值2.案例代碼
注意: 我們經常忘記提供更新的 where 條件,這樣會導致整張表的數據都被更新,一定要慎重
delete from users where id=46. WHERE 子句
1.WHERE 子句用于限定選擇的標準。在 SELECT、UPDATE、DELETE 語句中,皆可使用 WHERE 子句來限定選擇的標準
-- 查詢語句中的 WHERE條件 SELECT 列名稱 FROM 表名稱 WHERE 列 運算符 值 -- 更新語句中的 WHERE條件 UPDATE 表名稱 SET 列=新值 WHERE 列 運算符 值 -- 刪除語句中的 WHERE條件 DELETE FROM 表名稱 WHERE 列 運算符 值?2.可在 WHERE 子句中使用的運算符
注意:在某些版本的 SQL 中,操作符 <> 可以寫為 !=
?3.可以通過 WHERE 子句來限定 SELECT 的查詢條件
例 :
-- 查詢 id 為 1 的所有用戶 select * from users where id=1-- 查詢 id 大于 2 的所有用戶 select * from users where id>2--查詢 username 不等于 admin 的所有用戶 select * from users where username<>'zs'7. SQL 的 AND 和 OR 運算符
1.AND 和 OR 可在 WHERE 子語句中把兩個或多個條件結合起來
2.AND 表示必須同時滿足多個條件,相當于 JavaScript 中的 && 運算符,例如 if (a !== 10 && a !== 20)
3.OR 表示只要滿足任意一個條件即可,相當于 JavaScript 中的 || 運算符,例如 if(a !== 10 || a !== 20)
4.案例代碼
-- and -- 使用 AND 來顯示所有 status 為 0,并且 id 小于 3 的用戶select * from users where status=0 and id<3 -- or -- 使用 OR 來顯示所有 status 為 1,或者 username 為 zs 的用戶select * from users where status=0 or username='zs'8. SQL 的 ORDER BY 子句
1.語法
(1)ORDER BY 語句用于根據指定的列對結果集進行排序
(2)ORDER BY 語句默認按照升序對記錄進行排序,ASC 關鍵字代表升序排序
(3)如果您希望按照降序對記錄進行排序,可以使用 DESC 關鍵字
2.ORDER BY 子句 - 升序排序
對 users 表中的數據,按照 status 字段進行升序排序
-- 下面這兩條 SQL 語句是等價的, -- 因為 order by 默認進行升序排序 -- 其中,ASC 關鍵字代表升序排序-- select * from users order by status select * from users order by status asc3.ORDER BY 子句 – 降序排序
對 users 表中的數據,按照 id 字段進行降序排序
-- desc 代表降序排序select * from users order by status desc9. ORDER BY 子句 – 多重排序
1.對 users 表中的數據,先按照 status 字段進行降序排序,再按照 username 的字母順序,進行升序排序
2.案例代碼
select * from users order by status desc, username asc10.?SQL 的 COUNT(*) 函數
1.COUNT(*) 函數用于返回查詢結果的總數據條數
SELECT COUNT(*) FROM 表名稱2.案例語法
select count(*) from users -- 查詢 users 表中 status 為 0 的總數據條數select count(*) from users where status=011.使用 AS 為列設置別名
如果希望給查詢出來的列名稱設置別名,可以使用 AS 關鍵字
-- 將列名從 count(*) 修改為 totalselect count(*) as total from users where status=0 -- 將列名 username 改為 uname, password 改為 upwdselect username as uname, password as upwd from users總結
以上是生活随笔為你收集整理的MYSQL详解及语法大全的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STM32中C语言知识点:初学者必看,老
- 下一篇: 耗时两年,19岁小伙采用230片纯74逻