MYSQL-增刪查改CRUD

目錄

🌿前言:

🌿增-C-Create-新增

🧊單行數據+全列插入

🍋?🟩語法:

🍋?🟩演示:

🧊指定列插入

🍋?🟩語法:

🍋?🟩演示:

🧊多行插入

🍋?🟩語法:

🍋?🟩演示:

🌿刪-D-Delete-刪除

🧊語法

🧊以下面這個表為例

🧊刪除name為馬克的數據行

🧊刪除語文成績倒數前3的數據行

🧊注意:delete語句不支持寫入limit偏移量和limit? offset

🍋?🟩例如:?編輯

🌿查-R-Retrieve-查詢,檢索

🧊全列查詢

🍋?🟩全列查詢基礎語法:

🍋?🟩演示:

🧊指定列查詢:

🍋?🟩語法:

🍋?🟩演示:

🍋?🟩題1:查詢字段為表達式

🔎演示:

🍋?🟩題2:常量表達式

🔎演示1:

🔎演示2:

🍋?🟩題3:計算每個同學的所有成績

🔎演示:

🍋?🟩為查詢結果指定別名

🔎演示1:

🔎演示2:

🔎演示3

🔎演示4

🧊結果去重查詢

🍋?🟩錯誤示例:

🍋?🟩對數學成績進行去重查詢

🔎演示:

🍋?🟩對id和數學成績進行去重

🔎演示:

🧊排序查詢

🍋?🟩語法

🍋?🟩對語文成績進行升序查詢

🍋?🟩對語文成績進行降序查詢

🍋?🟩沒有對語文成績指定升序還是降序查詢

🍋?🟩使用表達式及別名進行排序

🔎計算總分,然后升序排序(使用表達式)

🔎計算總分,然后升序排序(使用別名)

🧊條件查詢(where-SQL語句執行順序)

🍋?🟩使用where條件的語法

🍋?🟩查詢語文成績<=90的學生

🍋?🟩查詢語文成績<=英語成績的學生(兩個 列 | 字段 是可以比較的)

🍋?🟩查詢總分在200以下的學生

🧊模糊查詢

🍋?🟩演示1:

🍋?🟩總演示:

🧊分頁查詢

🍋?🟩語法1:

🍋?🟩語法2:

🍋?🟩一般寫法

🍋?🟩偏移量也可以不寫,默認就是0

🍋?🟩使用offset關鍵字

🌿改-U-Update-更新

🧊語法:

🧊演示:

🍋?🟩將白月魁的數學成績改成100(原先是90分)

🍋?🟩將數學成績為85的學生都改成數學成績為100

🍋?🟩要改動的數據行,不只是改一列,而是要改動多列的數據

🌿運算符

🧊依據此下表:

🧊演示:

🍋?🟩and

🍋?🟩or

🍋?🟩not(取反的意思)

🍋?🟩注意點:

🧊拓展

🍋?🟩如果我們要在一個區間進行查詢呢?

🔎演示1:

🔎演示2:

🍋?🟩可如果我們要查詢的是某個成績剛好是多少分的同學呢?

🔎演示:


🌿前言:

這是一篇對我而言比較重要的文章,因為剛入職的程序員大多數都是做這些CRUD的,我會用些簡白的話來講好這里的知識點,也方便我日后回顧吧

為了能更直白的講解這些語法,我創建了一個學生表CRUD的相關操作都依靠此表進行!



🌿增-C-Create-新增

🧊單行數據+全列插入

🍋?🟩語法:

insert? ?into? 表名(字段1,字段2,字段3~~~)? ? ?values(數值1,數值2,數值3~~~)

也可以省略寫成

insert? ?into? 表名? ?values(數值1,數值2,數值3~~~)

🍋?🟩演示:

🧊指定列插入

🍋?🟩語法:

insert? ?into? 表名(任意一個字段)? ? ?values(與任意字段相對應的值)

注意:只寫任意個字段,其他沒寫的字段對應的數值就會為NULL

🍋?🟩演示:

🧊多行插入

🍋?🟩語法:

insert? ?into? 表名(字段1,字段2,字段3~~~)? ? ?values(數值1,數值2,數值3~~~),(數值1,數值2,數值3~~~),(數值1,數值2,數值3~~~)~~~~~

🍋?🟩演示:



🌿刪-D-Delete-刪除

🧊語法

delete from 表名? ?where 條件? ?order?by? ?列? ?asc | desc? limit(偏移量,要查詢幾條)

刪除操作較為簡單,我就舉上2個例子吧

🧊以下面這個表為例

🧊刪除name為馬克的數據行

🧊刪除語文成績倒數前3的數據行

🧊注意:delete語句不支持寫入limit偏移量和limit? offset

🍋?🟩例如:

大家需要注意下select語句支持寫入limit偏移量limit? offset,而delete語句不支持!!



🌿查-R-Retrieve-查詢,檢索

🧊全列查詢

🍋?🟩全列查詢基礎語法:

select * from 表名

🍋?🟩演示:

🧊指定列查詢:

🍋?🟩語法:

select? ? ?字段1,字段2~~~? ? from? 表名

🍋?🟩演示:

🍋?🟩題1:查詢字段為表達式

把所有學生的語文成績+10

🔎演示:

🍋?🟩題2:常量表達式

🔎演示1:

🔎演示2:

🍋?🟩題3:計算每個同學的所有成績

🔎演示:

注意:NULL與任何數運算都為NULL

🍋?🟩為查詢結果指定別名

🔎演示1:

🔎演示2:

🔎演示3

🔎演示4

🧊結果去重查詢

🍋?🟩錯誤示例:

這個我想的先查id,name,然后再對數學進行去重查詢,然后這個SQL語法報錯,說明這樣不行,也就是正常查尋去重查詢不能放在一個語句里會報錯,這點須注意下

🍋?🟩對數學成績進行去重查詢

🔎演示:

按照先后順序來,后面的就給去重了,那么我們要思考下,如果有兩個甚至是N個相同的呢,是只去重一個,還是N個呢?

所以我故意插入了數學成績為90的

這是整體的數據

然后我們對數學進行去重查詢時,發現,兩個相同的都不見了

這說明當我們去重某個字段時,如果有N個對的數相同(也就是2N個數里兩兩相同),就會去重N個數,保留唯一的N數據

🍋?🟩對id和數學成績進行去重

🔎演示:

我們發現,這些數據一條都沒去重,這是因為我們指定了id和math的去重,就規定了他們都要相同才能符合去重的語法!!

🧊排序查詢

🍋?🟩語法

select *? ?from 表名 order by? 要排序的列? ? ? asc(升序)? |? desc(降序)

這里也可以不要 * ,看你自己想查詢出來后咋樣顯示,我這里是顯示整張表

那個要排序的列,無論是升序還是降序都會對那條整個行進行排序上的影響但不影響真實數據

🍋?🟩對語文成績進行升序查詢

🍋?🟩對語文成績進行降序查詢

🍋?🟩沒有對語文成績指定升序還是降序查詢

如果沒有對語文成績指定升序還是降序查詢,SQL語法默認升序查詢

🍋?🟩使用表達式及別名進行排序

🔎計算總分,然后升序排序(使用表達式)

演示:

🔎計算總分,然后升序排序(使用別名)

演示:

再次提醒,NULL和任何數值運算都為NULL

🧊條件查詢(where-SQL語句執行順序)

🍋?🟩使用where條件的語法

select? * from 表名 where? 列名|表達式? 運算符? 條件

🍋?🟩查詢語文成績<=90的學生

🍋?🟩查詢語文成績<=英語成績的學生(兩個 列 | 字段 是可以比較的)

🍋?🟩查詢總分在200以下的學生

如果我們想使用別名呢

我們發現,明明我們已經起了個別名,為啥錯了?其實這是因為SQL語句執行的順序

為啥這個沒報錯???

好吧,SQL語句的執行順序是這樣的

1.先執行from,確定好表

2.執行where子句,過濾不符合條件的

3.執行select和from之間的子句

4.執行order by 子句

那么我們回到上面的這個語句

SQL語句執行順序這個語句執行順序

首先確定好了一個student的表,然后執行where子句的條件,可是total是誰?SQL語句不知道,因為需要執行完這個才執行select和from子句而我們初始化別名就是在這一步,就是這個道理,

就相當于,一個陌生人叫你的名字并讓你免費給他一筆大的錢數,你會理他嗎?是不是不會,這個也是同樣的道理,SQL語句忽然發現有個total的陌生人,他就得報錯!

🧊模糊查詢

%? 和? ?_

? %? 表示任意,一個 _? 表示一個字符

🍋?🟩演示1:

不管用哪個,已知的字符不是最左邊就得是最右邊

我這里想查找白月魁這個學生,可是“月”不是最邊上的字符,所以查不到,為空

🍋?🟩總演示:

🧊分頁查詢

🍋?🟩語法1:

?select 列名 from 表名 where 條件 order by 列? ?{升序asc|降序desc}???limit 偏移量,顯示條數;

🍋?🟩語法2:

?select 列名 from 表名 where 條件 order by 列? ?{升序asc|降序desc}???limit 顯示條數 offset偏移量;

🍋?🟩一般寫法

🍋?🟩偏移量也可以不寫,默認就是0

🍋?🟩使用offset關鍵字



🌿改-U-Update-更新

修改(更新)查詢的語法不同需要重點記憶

🧊語法:

update? ? 表名? ? set? ? 要改的列(像math=90)? ? ? where條件等等

🧊演示:

🍋?🟩將白月魁的數學成績改成100(原先是90分)

🍋?🟩將數學成績為85的學生都改成數學成績為100

這樣所以數學成績為85的學生都改成數學成績為100了,

所以update set這個語句不只是改動一條數據行可以改動任何數量的符合條件的數據行

🍋?🟩要改動的數據行,不只是改一列,而是要改動多列的數據

中間加個? ,符號就行



🌿運算符

🧊依據此下表:

🧊演示:

🍋?🟩and

🍋?🟩or

🍋?🟩not(取反的意思)

🍋?🟩注意點:

優先級:? ?not > and > or

🧊拓展

🍋?🟩如果我們要在一個區間進行查詢呢?

比如要在數學成績在80<=X<=90的區間查詢(between配合運算符

🔎演示1:

注意這個左右都是閉區間!!!

🔎演示2:


🍋?🟩可如果我們要查詢的是某個成績剛好是多少分的同學呢?

比如,要查詢數學成績剛好是72,78,85的學生

🔎演示:

完結!!!

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

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

相關文章

【Loss學習筆記】Focal loss、QFL、DFL、VFL——目標檢測定位損失函數詳解

文章目錄Focal loss&#xff08;2018 ICCV &#xff0c;RetinaNet&#xff09;1、Focal Loss 提出背景問題一&#xff1a;正負樣本數量不均衡問題問題二&#xff1a;難分類/易分類樣本數量不均衡問題對兩個問題的解決2、正負樣本數量不均衡問題的解決&#xff1a;Focal loss 的…

nertctl使用了解

測試了幾個容器&#xff0c;似乎未對k8s的containerd產生影響&#xff0c;都能訪問 再次測試&#xff0c;containerd發生了重啟&#xff0c;nrtdctl啟動的容器都沒了 #### sealos 創建containerd集群 sealos run registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.29…

三、k8s 1.29 之 資源清單

一、什么是資源 資源(Resources) 是指集群中可被分配、管理和調度的各種實體,既包括計算、存儲、網絡等基礎設施資源,也包括 K8s 自身定義的 API 對象(如 Pod、Deployment 等)。這些資源是 K8s 調度和管理工作負載的核心基礎。 Kubernetes 中的資源本質上是 “可被操作的…

React中常用的Hook(useEffect、useRef、useMemo、useNavigate、useParams)

React hook1&#xff1a;useEffect 在編程中&#xff0c;副作用是指函數或表達式在執行過程中對外部環境產生影響的行為。例如&#xff1a; 修改外部變量&#xff08;如全局變量、DOM、API 請求、設置定時器等&#xff09; 什么是純函數&#xff1f; // 純函數&#xff1a;輸入…

關聯規則挖掘1:Apriori算法

目錄 一、Apriori算法核心原理 1. 基本概念 2. Apriori性質 二、完整案例計算&#xff08;超市購物數據&#xff09; ?步驟1&#xff1a;按字母序重排每筆交易? ?步驟2&#xff1a;統計頻繁1-項集&#xff08;min_support40%&#xff09;?? ?步驟3&#xff1a;生成…

基于 C++ 線程池的多線程目標檢測后處理系統設計與實現

在實際的智能視頻分析系統中,目標檢測(如 YOLOv5)只是第一步。檢測結果往往需要進行后續處理:畫框、報警、推流、日志記錄等。這些操作如果在檢測主線程中同步執行,會嚴重拖慢整體推理速度。 本文將帶你從零實現一個基于 C++ 模板線程池的異步后處理系統,實現“檢測與后…

Java并發容器詳解

1. JUC并發容器概述 Java集合容器框架主要有四大類別&#xff1a;List、Set、Queue、Map。常見的ArrayList、LinkedList、HashMap等容器都是非線程安全的。 Java提供了同步容器&#xff08;如Vector、Hashtable、SynchronizedList&#xff09;通過synchronized實現同步&#xf…

SpringAI系列---【SpringA集成OllamaI如何先調用向量庫,再把查到的結果一起傳給大模型?】

SpringAI如何先調用向量庫&#xff0c;再把查到的結果一起傳給大模型&#xff1f; 1.引入pom <dependencies><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-model-ollama</artifactId></depend…

告別“測試滯后”:AI實時測試工具在敏捷開發中的落地經驗

告別“測試滯后”&#xff1a;AI實時測試工具在敏捷開發中的落地經驗 在敏捷開發的“快速迭代”節奏中&#xff0c;測試環節常常成為“拖后腿”的短板。某互聯網公司的敏捷團隊曾陷入這樣的循環&#xff1a;2周迭代周期中&#xff0c;開發用10天完成功能&#xff0c;留給測試的…

K8S-Pod資源對象

一、K8S架構與組件1、K8S架構k8s 總體架構采用了經典的 maste/slave 架構模式&#xff0c;分 master 節點和 worker 節點&#xff0c;節點可以是虛擬機也可以是物理機。K8S組件 master 節點組件Kube-apiserver 用于暴露 Kubernetes API&#xff0c;任何資源請求或調用操作都是通…

PyTorch API 5

文章目錄torch.compiler延伸閱讀torch.fft快速傅里葉變換輔助函數torch.func什么是可組合的函數變換&#xff1f;為什么需要可組合的函數變換&#xff1f;延伸閱讀torch.futurestorch.fx概述編寫轉換函數圖結構快速入門圖操作直接操作計算圖使用 replace_pattern() 進行子圖重寫…

基于決策樹模型的汽車價格預測分析

一、整體流程概覽這份代碼實現了一個完整的機器學習預測流程&#xff0c;核心目標是通過汽車的各項特征預測其價格。整體流程分為 6 個主要步驟&#xff1a;模擬生成汽車數據集&#xff08;含價格標簽&#xff09;數據預處理&#xff08;清洗、編碼、特征選擇&#xff09;探索性…

0基礎安卓逆向原理與實踐:第2章:編程基礎與工具鏈

第2章:編程基礎與工具鏈 2.1 Java編程基礎 2.1.1 Java語言特性 Java是安卓應用開發的主要語言,具有以下核心特性: mindmaproot((Java特性))面向對象封裝繼承多態抽象平臺無關字節碼JVM一次編譯到處運行內存管理自動垃圾回收堆棧管理引用類型安全性字節碼驗證安全管理器訪…

深入理解JVM內存結構:從字節碼執行到垃圾回收的全景解析

&#x1f9e0; 深入理解JVM內存結構&#xff1a;從字節碼執行到垃圾回收的全景解析 #JVM內存模型 #Java性能優化 #垃圾回收機制 #并發編程一、JVM內存結構全景圖二、線程共享區域詳解 2.1 堆&#xff08;Heap&#xff09;—— 對象生存的宇宙 存儲內容&#xff1a; 所有new創建…

用 C++ 構建高性能測試框架:從原型到生產實戰指南

用 C 構建高性能測試框架&#xff1a;從原型到生產實戰指南 ?C 測試框架的關鍵價值?&#xff1a;當你的測試需要每秒處理百萬級交易&#xff0c;微秒級延遲要求已成為常態時&#xff0c;Python GC 的暫停便是不可接受的奢侈。 本文將深入探討如何用 C 構建兼具靈活性和高性能…

【C語言16天強化訓練】從基礎入門到進階:Day 4

&#x1f525;個人主頁&#xff1a;艾莉絲努力練劍 ?專欄傳送門&#xff1a;《C語言》、《數據結構與算法》、C語言刷題12天IO強訓、LeetCode代碼強化刷題、洛谷刷題、C/C基礎知識知識強化補充、C/C干貨分享&學習過程記錄 &#x1f349;學習方向&#xff1a;C/C方向 ??人…

C語言:字符函數與字符串函數(1)

在編程的過程中&#xff0c;我們經常會遇到需要處理字符和字符串的情況&#xff0c;為了方便操作字符和字符串&#xff0c;C語言標準庫中提供了一系列庫函數&#xff0c;接下來我們就學習一下這些函數。 目錄 1. 字符分類函數 2. 字母轉換函數 3. strlen函數的使用和模擬實現…

數據結構與算法系列(大白話模式)小學生起點(一)

出身&#xff0c;并不重要 &#xff01;&#xff01;&#xff01;&#xff01;只要有恒心&#xff0c;有毅力&#xff0c;肯于付出與學習&#xff0c;皆會取得相應的成就&#xff01;天道酬勤&#xff0c;天行健&#xff0c;君子當自強不息&#xff01;道可道&#xff0c;非常道…

計算機視覺第一課opencv(二)保姆級教學

目錄 簡介 一、邊界填充 1.函數說明 2.案例分析 二、圖像運算 1.號運算 2.cv2.add()函數 3.圖像加權運算 三、閾值處理 四、圖像平滑處理 1.椒鹽噪聲 2.均值濾波&#xff08;Mean Filtering&#xff09; 3.方框濾波 4. 高斯濾波&#xff08;Gaussian Filtering&am…

DINOv3

一、摘要 https://arxiv.org/pdf/2508.10104 自監督學習有望消除對人工數據標注的需求&#xff0c;使模型能夠輕松擴展到大規模數據集和更大規模的架構。由于不針對特定任務或領域進行定制&#xff0c;這種訓練范式具有從各種來源學習視覺表示的潛力&#xff0c;能夠使用單一…