SQL基礎操作:從增刪改查開始

好的!SQL(Structured Query Language)是用于管理關系型數據庫的標準語言。讓我們從最基礎的增刪改查(CRUD)?? 操作開始學習,我會用簡單易懂的方式講解每個操作。


🛠 準備工作(建表)

在開始之前,我們創建一個簡單的學生表(student)作為示例:

CREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT,  -- 學號(主鍵,自增長)name VARCHAR(50) NOT NULL,        -- 姓名(非空)age INT,                          -- 年齡gender ENUM('男', '女'),           -- 性別class VARCHAR(20)                 -- 班級
);

🔍 一、查(SELECT) - 讀取數據

?語法:??

SELECT 列名 FROM 表名 [WHERE 條件] [ORDER BY 排序] [LIMIT 數量];

?實例:??

-- 查詢所有學生信息
SELECT * FROM students;-- 查詢所有女生的姓名和班級
SELECT name, class FROM students WHERE gender = '女';-- 查詢20歲以上學生,按年齡降序排序
SELECT * FROM students WHERE age > 20 ORDER BY age DESC;-- 查詢第5-10條記錄(分頁)
SELECT * FROM students LIMIT 4, 6;

? 二、增(INSERT) - 添加數據

?語法:??

INSERT INTO 表名 (列1, 列2, ...) VALUES (值1, 值2, ...);

?實例:??

-- 添加1位學生(指定列)
INSERT INTO students (name, age, gender, class) 
VALUES ('張三', 18, '男', '計算機1班');-- 添加多位學生
INSERT INTO students (name, age, gender, class) 
VALUES ('李四', 19, '女', '外語2班'),('王五', 20, '男', '物理3班');

🔄 三、改(UPDATE) - 修改數據

?語法:??

UPDATE 表名 SET 列1=值1, 列2=值2 [WHERE 條件];

?**?? 警告:?**? 不指定WHERE會修改整個表!

?實例:??

-- 修改張三的班級
UPDATE students SET class = '計算機2班' WHERE name = '張三';-- 所有人年齡增加1歲
UPDATE students SET age = age + 1;-- 修改多個字段
UPDATE students 
SET age = 22, gender = '女' 
WHERE name = '王五';

? 四、刪(DELETE) - 刪除數據

?語法:??

DELETE FROM 表名 [WHERE 條件];

?**?? 重要:?**? 刪除操作不可逆,務必確認WHERE條件!

?實例:??

-- 刪除名為李四的學生
DELETE FROM students WHERE name = '李四';-- 刪除20歲以上所有女生
DELETE FROM students WHERE age > 20 AND gender = '女';-- ?? 刪除整張表(謹慎使用!)
DELETE FROM students;

📊 五、綜合示例

假設我們有個成績表(scores):

CREATE TABLE scores (student_id INT,subject VARCHAR(20),score INT,FOREIGN KEY (student_id) REFERENCES students(id)
);

?增刪改查組合使用:??

-- 添加成績
INSERT INTO scores VALUES
(1, '數學', 90),
(2, '英語', 85);-- 查詢不及格的學生和科目
SELECT s.name, sc.subject, sc.score
FROM students s
JOIN scores sc ON s.id = sc.student_id
WHERE sc.score < 60;-- 修改張三的數學成績
UPDATE scores SET score = 95
WHERE student_id = (SELECT id FROM students WHERE name = '張三') 
AND subject = '數學';-- 刪除所有成績為0的記錄
DELETE FROM scores WHERE score = 0;

💡 核心要點總結:

  1. ?查(WHERE)?? :操作前先用SELECT確認數據
  2. ?改/刪(WHERE)??:必須有WHERE條件,否則會全表操作
  3. ?外鍵關聯?:表連接時要使用JOIN
  4. ?事務?:重要操作建議用事務(BEGIN; ... COMMIT;)

📚 下一步學習建議:

graph LR
A[基礎CRUD] --> B[條件查詢]
B --> C[表連接JOIN]
C --> D[分組聚合GROUP BY]
D --> E[子查詢]
E --> F[存儲過程/函數]

從基礎逐步進階,多動手練習才能真正掌握!建議安裝MySQL或SQLite進行實踐練習。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/85632.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/85632.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/85632.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vim 編輯模式/命令模式/視圖模式常用命令

以下是一份 Vim 命令大全&#xff0c;涵蓋 編輯模式&#xff08;Insert Mode&#xff09;、命令模式&#xff08;Normal Mode&#xff09; 和 視圖模式&#xff08;Visual Mode&#xff09; 的常用操作&#xff0c;適合初學者和進階用戶使用。 &#x1f9fe; Vim 模式簡介 Vim…

每天看一個Fortran文件(10)

今天來看下MCV模式調用物理過程的相關代碼。我想改進有關于海氣邊界層方面的內容&#xff0c;因此我尋找相關的代碼&#xff0c;發現在physics目錄下有一個sfc_ocean.f的文件。 可以看見這個文件是在好多好多年前更新的了&#xff0c;里面內容不多&#xff0c;總共146行。是計算…

python打卡day37

疏錦行 知識點回顧&#xff1a; 1. 過擬合的判斷&#xff1a;測試集和訓練集同步打印指標 2. 模型的保存和加載 a. 僅保存權重 b. 保存權重和模型 c. 保存全部信息checkpoint&#xff0c;還包含訓練狀態 3. 早停策略 作業&#xff1a;對信貸數據集訓練后保存權重&#xf…

【Spark征服之路-2.9-Spark-Core編程(五)】

RDD行動算子&#xff1a; 行動算子就是會觸發action的算子&#xff0c;觸發action的含義就是真正的計算數據。 1. reduce ? 函數簽名 def reduce(f: (T, T) > T): T ? 函數說明 聚集 RDD 中的所有元素&#xff0c;先聚合分區內數據&#xff0c;再聚合分區間數據 val…

【入門】【練17.3 】比大小

| 時間限制&#xff1a;C/C 1000MS&#xff0c;其他語言 2000MS 內存限制&#xff1a;C/C 64MB&#xff0c;其他語言 128MB 難度&#xff1a;中等 分數&#xff1a;100 OI排行榜得分&#xff1a;12(0.1分數2難度) 出題人&#xff1a;root | 描述 試編一個程序&#xff0c;輸入…

CppCon 2017 學習:Free Your Functions!

“Free Your Functions!” 這句話在C設計中有很深的含義&#xff0c;意思是&#xff1a; “Free Your Functions!” 的理解 “解放你的函數”&#xff0c;鼓勵程序員&#xff1a; 不要把所有的函數都綁在類的成員函數里&#xff0c;優先考慮寫成自由函數&#xff08;non-mem…

日常運維問題匯總-19

60. OVF3維護成本中心與訂貨原因之間的對應關系時&#xff0c;報錯提示&#xff0c;SYST: 不期望的日期 00/00/0000。消息號 FGV004&#xff0c;如下圖所示&#xff1a; OVF3往右邊拉動&#xff0c;有一個需要填入的字段“有效期自”&#xff0c;此字段值必須在成本中心定義的有…

2025SCA工具推薦︱基于多模態SCA的新一代開源供應鏈風險審查與治理平臺

近年來&#xff0c;隨著開源軟件在企業數字化轉型中的廣泛應用&#xff0c;開源供應鏈攻擊事件頻發&#xff0c;企業普遍面臨三大突出難題&#xff1a;一是不清楚自身引入了哪些開源組件&#xff0c;二是不掌握組件中潛在的安全漏洞和合規風險&#xff0c;三是缺乏自動化、全流…

CppCon 2017 學習:Migrating a C++03 library to C++11 case study

這段內容是在介紹 Wt&#xff08;發音類似 “witty”&#xff09; —— 一個用于 C 的 Web UI 框架。總結如下&#xff1a; 什么是 Wt&#xff1f; Wt 是一個 用 C 編寫的 widget&#xff08;控件&#xff09;驅動的 Web 框架。類似于桌面 GUI 框架&#xff08;比如 Qt&#…

coding習慣 + Bug記錄整理

&#x1f4d6; 清單 1、包裝類型導致的NPE2、xxApiWrapper命名3、see注釋4、MySQL模糊匹配特殊字符bug 整理些平時不好的coding習慣導致的bug&#x1f4dd; 1、包裝類型導致的NPE 處理項目的一個bug&#xff0c;看日志是發生了空指針&#xff0c;相關代碼如下&#xff1a; D…

機器學習項目微服務離線移植

機器學習項目微服務離線移植 引言&#xff1a;為什么需要Docker化機器學習項目&#xff1f; 在當今的機器學習工程實踐中&#xff0c;項目部署與移植是一個常見但極具挑戰性的任務。傳統部署方式面臨著"在我機器上能運行"的困境——開發環境與生產環境的不一致導致…

JS紅寶書筆記 8.4 類

與函數類型相似&#xff0c;定義類也有兩種主要方式&#xff1a;類聲明和類表達式&#xff0c;這兩種方式都使用class關鍵字加大括號 與函數表達式類似&#xff0c;類表達式在它們被求值前也不能引用&#xff0c;不過與函數定義不同的是&#xff0c;雖然函數聲明可以提升&…

專題:2025游戲科技與市場趨勢報告|附130+份報告PDF匯總下載

原文鏈接&#xff1a;https://tecdat.cn/?p42733 2024年全球游戲市場規模突破1877億美元&#xff0c;中國以37.5%的全球占比成為核心增長引擎。生成式AI以52%的企業采用率重塑開發流程&#xff0c;混合休閑游戲實現37%的收入增長&#xff0c;跨端互通產品貢獻42%增量。玩家行為…

【沉浸式解決問題】Property ‘sqlSessionFactory‘ or ‘sqlSessionTemplate‘ are required

目錄 一、問題描述二、場景還原1. 測試mapper2. 測試service 三、原因分析四、解決方案1. DemoApplicationTests2. DemoApplication 后記 一、問題描述 在Application文件中加了ComponentScan注解&#xff0c;此后運行任何測試方法均報錯 java.lang.IllegalStateException: Fa…

Ubuntu 和 CentOS 中配置靜態 IP

在 Ubuntu 和 CentOS 中配置靜態 IP 的方法有所不同&#xff0c;主要因為兩者使用的網絡管理工具不同。以下是詳細步驟&#xff1a; Ubuntu&#xff08;18.04 及更新版本&#xff0c;使用 netplan&#xff09; 1. 查看網卡名稱 ip a記錄網卡名稱&#xff08;如 ens33、eth0&a…

4、做中學 | 二年級下期 Golang整型和浮點型

上篇介紹了哪些數據類型&#xff0c;如何進行聲明常量和變量&#xff0c;那么接下來進行詳細學習下各個數據類型的使用&#xff01; 一、整數 在go中&#xff0c;整數分為倆類&#xff0c;一個是無符號整數&#xff0c;即0以上數值&#xff1b;另一個是有符號數值&#xff0c;…

C++11 GC Interface:從入門到精通

文章目錄 一、引言二、C11簡介2.1 C11發展歷史2.2 C11新特性概述 三、C11中的垃圾收集支持和基于可達性的泄漏檢測3.1 背景與原理3.2 相關標準與接口3.3 示例代碼 四、C11 GC interface的使用場景4.1 簡化內存管理4.2 提高代碼可靠性 五、C23中移除垃圾收集支持和基于可達性的泄…

《高并發系統性能優化三板斧:緩存 + 異步 + 限流》

高并發系統性能優化三板斧&#xff1a;緩存 異步 限流 引言 在互聯網應用的高并發場景下&#xff0c;系統性能面臨巨大挑戰。以某電商平臺會員活動為例&#xff0c;活動期間瞬時QPS可達10萬&#xff0c;若未進行有效優化&#xff0c;服務器將迅速崩潰。本文從緩存、異步、限…

JVM(4)——引用類型

痛點引入&#xff1a; 為什么需要不同的引用類型&#xff1f;直接只用強引用不行嗎&#xff1f;&#xff08;內存泄漏風險、緩存管理粗粒度、對象生命周期監聽需求&#xff09; 核心作用&#xff1a; 解釋引用類型如何讓程序員與垃圾收集器&#xff08;GC&#xff09;協作&…

ONLYOFFICE 文檔 9.0 版本已發布:新界面、圖表查看器、.md 文件支持、AI 表格與宏等更新

ONLYOFFICE 文檔 9.0 版本已正式發布。此次更新包含 20 多項新功能和約 500 項修復&#xff0c;全面提升您的辦公效率。從全新界面、突破性的 AI 工具到更廣泛的文件格式兼容性&#xff0c;本次發布將帶來更加流暢的使用體驗。閱讀本文&#xff0c;了解詳情。 更新全部編輯器的…