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

来源:http://www.cnblogs.com/vastsum/archive/2016/10/22/5988597.html
-Advertisement-
Play Games

一、添加數據。 -- 1.創建表,並插入一定的數據。 -- 2.插入部分數據 二、修改數據 --1.根據條件修改數據 --2.修改多個欄位的內容 三、刪除數據(暫無演示) -- 7.刪除所有數據 -- 可以帶條件刪除,只能刪除表的數據,不能刪除表的約束,即自增長數值接著上次刪除的數值增長,刪除數據可 ...


一、添加數據。

-- 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;


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 關於Android程式的構架, 當前(2016.10)最流行的模式即為MVP模式, Google官方提供了Sample代碼來展示這種模式的用法. 本文為閱讀官方sample代碼的閱讀筆記和分析. ...
  • MySQL5 中添加了存儲過程的支持。 大多數SQL語句都是針對一個或多個表的單條語句。並非所有的操作都怎麼簡單。經常會有一個完整的操作需要多條才能完成 存儲過程簡單來說,就是為以後的使用而保存的一條或多條MySQL語句的集合。可將其視為批文件。雖然他們的作用不僅限於批處理。 為什麼要使用存儲過程: ...
  • 已經有快2個月沒有更新博客了,實在是因為最近發生了太多的事情,辭了工作,在湘雅醫院待了一個多月,然後又新換了工作...... 在平時的工作中,Sqlserver中許多知識點是經常用到的,但是有時候我們往往忽略了它們,在過去的一年裡,一直使用的是Mysql,現在又開始接觸Sqlserver了,所以就把 ...
  • 目前由於業務需要需要在地圖上顯示離坐標點最近的服務網點信息 前提:定位坐標與網點坐標均知曉: 演算法: ...
  • 一、下載及安裝MongoDB MongoDB下載官網鏈接:http://www.mongodb.org/downloads 具體安裝步驟教程:http://www.shouce.ren/api/view/a/6191(PS:該鏈接中對MongoDB安裝講解比較詳細,通俗易懂。安裝教程鏈接是我從手冊網 ...
  • 如何把mysql的列修改成行顯示數據簡單實現 創建測試表: 1: DROP TABLE IF EXISTS `test`;<!--CRLF--> 2: CREATE TABLE `test` (<!--CRLF--> 3: `year` int(11) DEFAULT NULL,<!--CRLF-- ...
  • 出處:kelvin19840813 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是對博主最大的鼓勵,感謝您的認真閱讀。本文版權歸作者所有,歡迎轉載,但請保留該聲明。 引用wiki: https://zh.wikipedia.org/wiki/%E6% ...
  • 在安裝mysql的過程中,出現的最麻煩的問題和解決方法 安裝後,啟動不成功,就卡了,程式就沒有響應。 如何解決: 找到mysql安裝目錄下的 #Path to the database root datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...