程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MYSQL基礎操作之單表的增刪改查,mysql基礎單表增刪

MYSQL基礎操作之單表的增刪改查,mysql基礎單表增刪

編輯:MySQL綜合教程

MYSQL基礎操作之單表的增刪改查,mysql基礎單表增刪


一、添加數據。

-- 1.創建表,並插入一定的數據。

 1 CREATE TABLE STUDENT(
 2 ID INT,
 3 USERNAME VARCHAR(20),
 4 SERVLET INT,
 5 JSP INT,
 6 ADDRESS VARCHAR(30)
 7 );
 8 INSERT INTO STUDENT VALUES (1,'張三',23,84,'京口區');
 9 INSERT INTO STUDENT VALUES (2,'李四',36,74,'潤州區');
10 INSERT INTO STUDENT VALUES (3,'王五',74,24,'京口區');
11 INSERT INTO STUDENT VALUES (4,'趙六',87,85,'京口區');
12 INSERT INTO STUDENT VALUES (5,'李七',63,98,'大港區');
13 INSERT INTO STUDENT VALUES (6,'鄭八',99,89,null);
14 INSERT INTO STUDENT VALUES (7,'孫九',60,84,'');

-- 2.插入部分數據

INSERT INTO STUDENT (ID,USERNAME) VALUES(8,'李十十');

二、修改數據

--1.根據條件修改數據

 UPDATE STUDENT SET SERVLET = 86 WHERE ID =1;

--2.修改多個字段的內容

UPDATE STUDENT SET SERVLET = 65,JSP = 73 WHERE ID = 2;

 

三、刪除數據(暫無演示)

-- 7.刪除所有數據

-- 可以帶條件刪除,只能刪除表的數據,不能刪除表的約束,即自增長數值接著上次刪除的數值增長,刪除數據可以回滾。
DELETE FROM STUDENT;

-- 8.帶條件刪除
DELETE FROM STUDENT WHERE SID = 2;
-- 9.另一種刪除方式,輸出表中所有數據

-- 不能帶條件刪除,既可以刪除表的數據,也可以刪除表的約束,永久刪除。

TRUNCATE TABLE STUDENT;

四、單表查詢

-- 1.查詢所有列

SELECT * FROM STUDENT;

 

-- 2.查詢指定列

SELECT ID ,USERNAME FROM STUDENT;

-- 3.查詢時指定別名
-- 在多表查詢時經常使用表的別名

SELECT ID AS '編號' ,USERNAME AS '用戶名' FROM STUDENT AS S;

 

-- 4.A查詢時添加常量列

SELECT ID ,USERNAME,'這是一個班' AS '備注' FROM STUDENT;

-- 5.查詢時合並列
-- 查詢每個學生的SERVLET和JSP的總成績
-- 合並列只能合並數值類型的字段。

SELECT ID ,USERNAME ,(SERVLET+JSP) AS '總成績' FROM STUDENT;

 

-- 6.查詢去除重復記錄
-- 查詢所有JSP成績可以出現的情況

SELECT DISTINCT ADDRESS FROM STUDENT;

-- 另一種語法

SELECT DISTINCT(ADDRESS) FROM STUDENT; 

-- 7.條件查詢(WHERE)
-- 7.1邏輯條件 AND OR
-- 查詢 SID為2,且姓名為李四的學生

SELECT * FROM STUDENT WHERE ID = 2 AND USERNAME = '李四';

 

-- 7.1.1查詢 SID為2,或姓名為張三的學生

SELECT * FROM STUDENT WHERE ID = 2 OR USERNAME = '張三';

-- 7.2比較條件 > < >= <= == <> BETWEEN AND
-- 7.2.1查詢 SERVLET 成績大於70分的學生

SELECT * FROM STUDENT WHERE SERVLET > 70;

 

-- 7.2.2查詢 SERVLET 成績大於60分小於80分的學生

SELECT * FROM STUDENT WHERE SERVLET >60 AND SERVLET < 80;

-- 7.2.3查詢 SERVLET 成績大於等於70小於等於80的學生

SELECT * FROM STUDENT WHERE SERVLET >=70 AND SERVLET <=80;

-- 7.2.4另外一種語法

SELECT * FROM STUDENT WHERE SERVLET BETWEEN 70 AND 80;

-- 7.2.5查詢 姓名不等於張三的記錄

SELECT * FROM STUDENT WHERE USERNAME <>'張三';

 

-- 7.3判空(null 空字符串) IS NULL IS NOT NULL ='' <>''
-- 7.3.1判斷NULL

SELECT * FROM STUDENT WHERE ADDRESS IS NULL;

-- 7.3.2判斷空字符串

SELECT * FROM STUDENT WHERE ADDRESS ='';

-- 7.3.3查詢地址為空的記錄

SELECT * FROM STUDENT WHERE ADDRESS IS NULL OR ADDRESS = '';

-- 7.3.4查詢地址不為空的記錄

SELECT * FROM STUDENT WHERE ADDRESS IS NOT NULL AND ADDRESS <>'';

-- 7.4模糊條件 LIKE
-- 通常使用以下替換的標記:%:表示任意字符;_:表示一個字符
-- 7.4.1查詢姓李學生的記錄

SELECT * FROM STUDENT WHERE USERNAME LIKE '李%';

 

-- 8.聚合查詢
-- 常用的聚合函數:SUM() AVG() MAX() MIN() COUNT()
-- 8.1查詢學生SERVLET 總成績

SELECT SUM(SERVLET) AS 'SERVLET的總成績' FROM STUDENT;

-- 8.2查詢 學生 SERVLET 的平均分

SELECT AVG(SERVLET) AS 'SERVLET的平均分' FROM STUDENT;

-- 8.3查詢當前 SERVLET 的最高分

SELECT MAX(SERVLET) AS '最高分' FROM STUDENT;

-- 8.4查詢 SERVLET的最低分

SELECT MIN(SERVLET) AS '最低分' FROM STUDENT;

-- 查詢當前有多少學生 COUNT(字段)

SELECT COUNT(*) FROM STUDENT;

-- 9.分頁查詢 LIMIT 起始行,查詢幾行。主要用於分頁。
-- 查詢第1,2條記錄

SELECT * FROM STUDENT LIMIT 0,2;

-- 10.排序,默認情況下按插入記錄的順序排序。ORDER BY
-- 10.1ASC 正序 DESC 倒序

SELECT * FROM STUDENT ORDER BY ID DESC;

-- 10.2按照SERVLET正序,再JSP倒序

SELECT * FROM STUDENT ORDER BY SERVLET ASC ,JSP DESC;

-- 11.分組查詢 GROUP BY
-- 查詢每個地區的人數

SELECT ADDRESS,COUNT(*) FROM STUDENT GROUP BY ADDRESS;

-- 12.分組查詢後篩選
-- 查詢分組後區域人數超過1個人的區域 GROUP BY 後面不能再跟條件where

SELECT ADDRESS ,COUNT(*) FROM STUDENT GROUP BY ADDRESS HAVING COUNT(*)>1;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved