MySQL(二): 表的增删查改
生活随笔
收集整理的這篇文章主要介紹了
MySQL(二): 表的增删查改
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 新增 (Create)
- 全列插入
- 指定列插入
- 查詢 (Retrieve)
- 全列查詢
- 指定列查詢
- 條件查詢
- 分頁查詢
- 去重:DISTINCT
- 排序:ORDER BY
- 別名:AS
- 更新 (Update)
- 刪除 (Delete)
CRUD 即增加(Create)、查詢(Retrieve)、更新(Update)、刪除(Delete)四個單詞的首字母縮寫,是表的四種基本操作。
新增 (Create)
全列插入
語法
INSERT INTO [表名] VALUES(參數1, 參數2, 參數3......);示例
INSERT INTO stu VALUES(2, 15, "李梅", 20200811, 88.5, 90.5);MariaDB [lee]> select * from stu; +------+------+--------+------------+-------+---------+ | id | age | name | birth | math | english | +------+------+--------+------------+-------+---------+ | 2 | 15 | 李梅 | 2020-08-11 | 88.50 | 90.50 | +------+------+--------+------------+-------+---------+ 1 row in set (0.000 sec)指定列插入
即只插入部分列內容
語法
示例
INSERT INTO stu(id, age, name) values(3, 16, "李華");MariaDB [lee]> select * from stu; +------+------+--------+-------+------+---------+ | id | age | name | birth | math | english | +------+------+--------+-------+------+---------+ | 3 | 16 | 李華 | NULL | NULL | NULL | +------+------+--------+-------+------+---------+ 1 row in set (0.001 sec)查詢 (Retrieve)
全列查詢
語法
SELECT * FROM [表名];示例
SELECT * FROM stu;+------+------+--------+------------+-------+---------+ | id | age | name | birth | math | english | +------+------+--------+------------+-------+---------+ | 1 | 11 | 李華 | 2020-08-12 | 76.50 | 87.50 | | 2 | 15 | 李梅 | 2020-08-13 | 88.50 | 90.50 | | 3 | 18 | 張三 | 2020-08-14 | 84.50 | 70.50 | | 4 | 16 | 李四 | 2020-08-15 | 75.60 | 40.80 | | 5 | 14 | 王五 | 2020-08-16 | 48.80 | 91.90 | | 6 | 13 | 馬六 | 2020-08-17 | 85.90 | 95.40 | +------+------+--------+------------+-------+---------+指定列查詢
語法
SELECT 列1,列2,列3..... FROM [表名];示例
SELECT id, age, name FROM stu;+------+------+--------+ | id | age | name | +------+------+--------+ | 1 | 11 | 李華 | | 2 | 15 | 李梅 | | 3 | 18 | 張三 | | 4 | 16 | 李四 | | 5 | 14 | 王五 | | 6 | 13 | 馬六 | +------+------+--------+條件查詢
語法
SELECT * FROM [表名] WHERE [條件];示例
SELECT * FROM stu where name = "李華";+------+------+--------+------------+-------+---------+ | id | age | name | birth | math | english | +------+------+--------+------------+-------+---------+ | 1 | 11 | 李華 | 2020-08-12 | 76.50 | 87.50 | +------+------+--------+------------+-------+---------+分頁查詢
語法
SELECT * FROM [表名] LIMIT [每頁條數] OFFSET [偏移條數];示例
SELECT * FROM stu LIMIT 2;//限制每頁兩條+------+------+--------+------------+-------+---------+ | id | age | name | birth | math | english | +------+------+--------+------------+-------+---------+ | 1 | 11 | 李華 | 2020-08-12 | 76.50 | 87.50 | | 2 | 15 | 李梅 | 2020-08-13 | 88.50 | 90.50 | +------+------+--------+------------+-------+---------+SELECT * FROM stu LIMIT 2 OFFSET 2;//偏移兩條,也就是查詢第二頁+------+------+--------+------------+-------+---------+ | id | age | name | birth | math | english | +------+------+--------+------------+-------+---------+ | 3 | 18 | 張三 | 2020-08-14 | 84.50 | 70.50 | | 4 | 16 | 李四 | 2020-08-15 | 75.60 | 40.80 | +------+------+--------+------------+-------+---------+去重:DISTINCT
語法
SELECT DISTINCT * FROM [表名];示例
SELECT DISTINCT * FROM stu;+------+------+--------+------------+-------+---------+ | id | age | name | birth | math | english | +------+------+--------+------------+-------+---------+ | 1 | 11 | 李華 | 2020-08-12 | 76.50 | 87.50 | | 2 | 15 | 李梅 | 2020-08-13 | 88.50 | 90.50 | | 3 | 18 | 張三 | 2020-08-14 | 84.50 | 70.50 | | 4 | 16 | 李四 | 2020-08-15 | 75.60 | 40.80 | | 5 | 14 | 王五 | 2020-08-16 | 48.80 | 91.90 | | 6 | 13 | 馬六 | 2020-08-17 | 85.90 | 95.40 | +------+------+--------+------------+-------+---------+排序:ORDER BY
語法
SELECT * FROM [表名] ORDER BY [排序依賴項] [DESC/ASC]; //DESC為降序排序,ASC為升序排序,默認為ASC示例
SELECT * FROM stu ORDER BY math DESC;//按數學成績降序+------+------+--------+------------+-------+---------+ | id | age | name | birth | math | english | +------+------+--------+------------+-------+---------+ | 2 | 15 | 李梅 | 2020-08-13 | 88.50 | 90.50 | | 6 | 13 | 馬六 | 2020-08-17 | 85.90 | 95.40 | | 3 | 18 | 張三 | 2020-08-14 | 84.50 | 70.50 | | 1 | 11 | 李華 | 2020-08-12 | 76.50 | 87.50 | | 4 | 16 | 李四 | 2020-08-15 | 75.60 | 40.80 | | 5 | 14 | 王五 | 2020-08-16 | 48.80 | 91.90 | +------+------+--------+------------+-------+---------+別名:AS
語法
SELECT 列a,列b...... AS [別名] FROM [表名]; //DESC為降序排序,ASC為升序排序,默認為ASC示例
SELECT name, math + english AS total FROM stu;//獲取每個人的總分+--------+--------+ | name | total | +--------+--------+ | 李華 | 164.00 | | 李梅 | 179.00 | | 張三 | 155.00 | | 李四 | 116.40 | | 王五 | 140.70 | | 馬六 | 181.30 | +--------+--------+更新 (Update)
語法
UPDATE [表名] SET [修改項] = [修改結果]示例
UPDATE stu SET math = 99.5 WHERE name = "李梅";MariaDB [lee]> select * from stu; +------+------+--------+------------+-------+---------+ | id | age | name | birth | math | english | +------+------+--------+------------+-------+---------+ | 2 | 15 | 李梅 | 2020-08-11 | 99.50 | 90.50 | +------+------+--------+------------+-------+---------+刪除 (Delete)
語法
DELETE FROM [表名];示例
DELETE FROM stu where name = "李梅";MariaDB [lee]> select * from stu; Empty set (0.000 sec)總結
以上是生活随笔為你收集整理的MySQL(二): 表的增删查改的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL(一): 数据类型、库的操作、
- 下一篇: MySQL(三)数据库的六种约束、表的关