SQL之DML(查詢語句:select、where)

🎯 本文專欄:MySQL深入淺出
🚀 作者主頁:小度愛學習

在這里插入圖片描述

select查詢語句

在開發中,查詢語句是使用最多,也是CRUD中,復雜度最高的sql語句。

查詢的語法結構

select *|字段1 [, 字段2 ……] from 表名稱 [, 表名稱2……] [where 條件] 
[group by 字段 [having 分組后的篩選]] 
[order by 字段 [desc|asc] [字段2 [desc|asc] ……]] 
[limit 分頁]

簡單的sql查詢

-- 查詢所有數據
select * from t_user;-- 查詢需要的字段信息
select id, name, password from t_user;
-- 查詢一個字段,一個等值條件
select name from t_user where id = 1;select 字段列表
from 表名稱
where 條件/*等值查詢
*/
select password from t_user where name="小度";
select * from t_user where age = 21;
alter table t_user add birthday datetime default now();
select * from t_user where birthday='2025-04-13 20:52:12';

select語句中的特殊情況:

對數值型數據列、變量、常量可以使用算數操作符創建表達式(+ - * /)
對日期型數據列、變量、常量可以使用部分算數操作符創建表達式(+ -)
運算符不僅可以在列和常量之間進行運算,也可以在多列之間進行運算。
select name,age*10 from t_user;
+----------+--------+
| name     | age*10 |
+----------+--------+
| 小度     |    210 |
| 小度3    |    170 |
| 小度4    |    190 |
| 張三     |    190 |
| xiaodu   |    190 |
| 小嘟     |    170 |
| 小嘟2    |    170 |
| xiaoxiao |   NULL |
| ls       |   NULL |
| zs       |   NULL |
+----------+--------+
10 rows in set (0.00 sec)補充:+ 說明
-- MySQL的+默認只有一個功能:運算符
SELECT 100+80; # 結果為180
SELECT '123'+80; # 只要其中一個為數值,則試圖將字符型轉換成數值,轉換成功做預算,結果為203
SELECT 'abc'+80; # 轉換不成功,則字符型數值為0,結果為80
SELECT 'This'+'is'; # 轉換不成功,結果為0
SELECT 'This'+'30is'; # 猜測下這個結果是多少?依舊是30
SELECT NULL+80; # 只要其中一個為NULL,則結果為NULL

等值判斷

條件中,出現了相等值的判斷,一般采用=進行判斷。

  • = 判斷兩次的值是否相等
  • is 判斷空null
  • is not null來判斷不為空
  • <=> 可以判斷null或者普通值

不等判斷

  • != 不等于
  • <>也是不等于

邏輯運算符

邏輯運算符是多條件關聯的一種方式。

與或非

  • and
  • or
  • not

注意:在sql中,如果要提升條件的運行順序,或者提高條件的優先級別,則需要使用括號來提升。

查詢時的別名使用

查詢時,將結果的顯示字段,使用一個其他名稱來代替,就是別名。

mysql> select count(*) from t_user;
+----------+
| count(*) |
+----------+
|       10 |
+----------+
1 row in set (0.01 sec)mysql> select count(*) as c from t_user;
+----+
| c  |
+----+
| 10 |
+----+
1 row in set (0.00 sec)mysql> select count(*) as 總人數 from t_user;
+--------+
| 總人數 |
+--------+
|     10 |
+--------+
1 row in set (0.00 sec)mysql> select count(*) 總人數 from t_user;
+--------+
| 總人數 |
+--------+
|     10 |
+--------+
1 row in set (0.00 sec)

常見的條件查詢

使用WHERE子句限定返回的記錄
WHERE子句在FROM 子句后SELECT[DISTINCT] {*, column [alias], ...}FROM table[WHEREcondition(s)];WHERE中的字符串和日期值
字符串和日期要用單引號擴起來
字符串是大小寫敏感的,日期值是格式敏感的select name,age,password from t_user where name='xiaodu';WHERE中比較運算符:select name,age,password from t_user where age<25;其他比較運算符
使用BETWEEN運算符顯示某一值域范圍的記錄select name,age,password from t_user where age between 20 and 25; SELECTlast_name, salary使用IN運算符使用IN運算符獲得匹配列表值的記錄select id,name,age,password from t_user where id in (5,6,7);使用LIKE運算符使用LIKE運算符執行模糊查詢查詢條件可包含文字字符或數字(%) 可表示零或多個字符( _ ) 可表示一個字符SELECT nameFROM t_userWHERE name LIKE '小%';使用IS NULL運算符查詢包含空值的記錄select id,name,age from t_user where age is null;邏輯運算符使用AND運算符AND需要所有條件都滿足.    select * from t_user where age=19 and password='123456';使用OR運算符OR只要兩個條件滿足一個就可以  select * from t_user where age=19 or password='123456';使用NOT運算符NOT是取反的意思select * from t_user where age not in(19);使用正則表達式:REGEXP<列名> regexp '正則表達式'select * from t_user where age regexp '^1';

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

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

相關文章

vue | 不同 vue 版本對復雜泛型的支持情況 · vue3.2 VS vue3.5

省流總結&#xff1a;defineProps 的泛型能力&#xff0c;來直接推導第三方組件的 props 類型 引入第三方庫的類型&#xff0c;并直接在 <script setup> 中作為 props 使用。這種類型一般是復雜泛型&#xff08;包含聯合類型、可選屬性、交叉類型、條件類型等&#xff0…

Unity-無限滾動列表實現Timer時間管理實現

今天我們來做一個UI里經常做的東西&#xff1a;無限滾動列表。 首先我們得寫清楚實現的基本思路&#xff1a; 所謂的無限滾動當然不是真的無限滾動&#xff0c;我們只要把離開列表的框再丟到列表的后面就行&#xff0c;核心理念和對象池是類似的。 我們來一點一點實現&#x…

Docker的基本概念和一些運用場景

Docker 是一種開源的容器化平臺&#xff0c;可以幫助開發人員更加高效地打包、發布和運行應用程序。以下是 Docker 的基本概念和優勢&#xff1a; 基本概念&#xff1a; 容器&#xff1a;Docker 使用容器來打包應用程序及其依賴項&#xff0c;容器是一個獨立且可移植的運行環境…

Unity中基于第三方插件擴展的對于文件流處理的工具腳本

在Unity的項目中對應文件處理,在很多地方用到,常見的功能,就是保存文件,加載文件,判斷文件或者文件夾是否存在,刪除文件等。 在之前已經寫過通過C#的IO實現的這些功能,可查看《Unity C# 使用IO流對文件的常用操作》,但是不能保證所有平臺都可以使用 現在基于第三方跨…

Flink介紹——實時計算核心論文之MillWheel論文詳解

引入 通過前面的文章&#xff0c;我們從S4到Storm&#xff0c;再到Storm結合Kafka成為當時的實時處理最佳實踐&#xff1a; S4論文詳解S4論文總結Storm論文詳解Storm論文總結Kafka論文詳解Kafka論文總結 然而KafkaStorm的第一代流式數據處理組合&#xff0c;還面臨的三個核心…

python異步協程async調用過程圖解

1.背景&#xff1a; 項目中有用到協程&#xff0c;但是對于協程&#xff0c;線程&#xff0c;進程的區別還不是特別了解&#xff0c;所以用圖示的方式畫了出來&#xff0c;用于理清三者的概念。 2.概念理解&#xff1a; 2.1協程&#xff0c;線程&#xff0c;進程包含關系 一…

【React】獲取元素距離頁面頂部的距離

文章目錄 代碼實現 代碼實現 import { useEffect, useRef, useState } from react;const DynamicPositionTracker () > {const [distance, setDistance] useState(0);const divRef useRef(null);useEffect(() > {const targetDiv divRef.current;if (!targetDiv) re…

26.OpenCV形態學操作

OpenCV形態學操作 形態學操作&#xff08;Morphological Operations&#xff09;源自二值圖像處理&#xff0c;主要用于分析和處理圖像中的結構元素&#xff0c;對圖像進行去噪、提取邊緣、分割等預處理步驟。OpenCV庫中提供了豐富的形態學函數&#xff0c;常見的包括&#xf…

邏輯回歸:損失和正則化技術的深入研究

邏輯回歸&#xff1a;損失和正則化技術的深入研究 引言 邏輯回歸是一種廣泛應用于分類問題的統計模型&#xff0c;尤其在機器學習領域中占據著重要的地位。盡管其名稱中包含"回歸"&#xff0c;但邏輯回歸本質上是一種分類算法。它的核心思想是在線性回歸的基礎上添…

大模型面經 | 介紹一下CLIP和BLIP

大家好,我是皮先生!! 今天給大家分享一些關于大模型面試常見的面試題,希望對大家的面試有所幫助。 往期回顧: 大模型面經 | 春招、秋招算法面試常考八股文附答案(RAG專題一) 大模型面經 | 春招、秋招算法面試常考八股文附答案(RAG專題二) 大模型面經 | 春招、秋招算法…

【MCP】第二篇:IDE革命——用MCP構建下一代智能工具鏈

【MCP】第二篇&#xff1a;IDE革命——用MCP構建下一代智能工具鏈 一、引言二、IDE集成MCP2.1 VSCode2.1.1 安裝VSCode2.1.2 安裝Cline2.1.3 配置Cline2.1.4 環境準備2.1.5 安裝MCP服務器2.1.5.1 自動安裝2.1.5.2 手動安裝 2.2 Trae CN2.2.1 安裝Trae CN2.2.2 Cline使用2.2.3 內…

【新能源科學與技術】MATALB/Simulink小白教程(一)實驗文檔【新能源電力轉換與控制仿真】

DP讀書&#xff1a;新能源科學與工程——專業課「新能源發電系統」 2025a 版本 MATLAB下面進入正題 仿真一&#xff1a;Buck 電路一、仿真目的二、仿真內容&#xff08;一&#xff09;Buck電路基本構成及工作原理&#xff08;二&#xff09;Buck電路仿真模型及元件連接&#xf…

BootStrap:首頁排版(其一)

今天我要介紹的是在BootStrap中有關于首頁排版的內容知識點&#xff0c;即&#xff08;模態框&#xff0c;選項卡&#xff09;。 模態框&#xff1a; 模態框經過了優化&#xff0c;更加靈活&#xff0c;以彈出對話框的形式出現&#xff0c;具有最小和最實用的功能集。 在運行…

Spring Data

目錄 一、Spring Data 簡介與生態概覽 什么是 Spring Data&#xff1f; Spring Data 與 Spring Data JPA 的關系 Spring Data 家族&#xff1a;JPA、MongoDB、Redis、Elasticsearch、JDBC、R2DBC…… 與 MyBatis 的本質差異&#xff08;ORM vs SQL 顯式控制&#xff09; 二…

建筑末端配電回路用電安全解決方案

一、電氣火災的嚴峻現狀 根據國家應急管理部消防救援局的數據&#xff0c;電氣火災長期占據各類火災原因之首&#xff0c;2021年占比高達50.4%。其中&#xff0c;末端配電回路因保護不足、監測手段落后&#xff0c;成為火災高發隱患點。私拉電線、線路老化、接觸不良、過載等問…

華為開發崗暑期實習筆試(2025年4月16日)

刷題小記&#xff1a; 第一題懷疑測試樣例不完整&#xff0c;貪心法不應該能夠解決該題。第二題使用0-1BFS解決單源最短路徑的問題&#xff0c;往往搭配雙端隊列實現。第三題是運用動態規劃解決最大不重疊子區間個數的問題&#xff0c;難點在于滿足3重判斷規則&#xff0c;所需…

Rust: 從內存地址信息看內存布局

內存布局其實有幾個&#xff1a;address&#xff08;地址&#xff09;、size&#xff08;大小&#xff09;、alignment&#xff08;對齊位數&#xff0c;2 的自然數次冪&#xff0c;2&#xff0c;4&#xff0c;8…&#xff09;。 今天主要從address來看內存的布局。 說明&…

每日一題算法——兩個數組的交集

兩個數組的交集 力扣題目鏈接 我的解法&#xff1a;利用數組下標。 缺點&#xff1a;當取值范圍很大時&#xff0c;浪費空間。 class Solution { public:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {int count1[1001]{0…

c++ 互斥鎖

為練習c 線程同步&#xff0c;做了LeeCode 1114題. 按序打印&#xff1a; 給你一個類&#xff1a; public class Foo {public void first() { print("first"); }public void second() { print("second"); }public void third() { print("third"…

山東大學軟件學院創新項目實訓開發日志(20)之中醫知識問答自動生成對話標題bug修改

在原代碼中存在一個bug&#xff1a;當前對話的標題不是現有對話的用戶的第一段的前幾個字&#xff0c;而是歷史對話的第一段的前幾個字。 這是生成標題的邏輯出了錯誤&#xff1a; 當改成size()-1即可