MySql(進階)

一.數據庫約束

?約束類型

NOT NULL?- 指示某列不能存儲 NULL 值。?(not null不能為NILL)

UNIQUE?- 保證某列的每行必須有唯一的值。 (unique唯一值)

DEFAULT?- 規定沒有給列賦值時的默認值。 (default為空給定默認值)

PRIMARY KEY?- NOT NULL 和 UNIQUE 的結合。確保某列(或兩個列多個列的結合)有唯一標

識,有助于更容易更快速地找到表中的一個特定的記錄。 (主鍵約束=not null+unique)

FOREIGN KEY?- 保證一個表中的數據匹配另一個表中的值的參照完整性。 (外鍵用于關聯其他表的主鍵或唯一鍵)

CHECK?- 保證列中的值符合指定的條件。對于MySQL數據庫,對CHECK子句進行分析,但忽略

CHECK子句

  1. PRIMARY KEY常配搭自增長auto_increment來使用。插入數據對應字段不給值時,使用最大 值+1
  2. FOREIGN KEY?:foreign key 字段名 references 關聯表名(關聯表列名);

二.表的設計

三.聚合查詢

1.聚合查詢

Count返回查詢到的數據數量:select count(*) from 表名;

sum返回查詢到的數據的總和,不是數字沒有意義:select sum(math) from 表名;

Avg返回查詢到的數據的平均值,不是數字沒有意義:select avg(math) 平均from 表名;

Max返回查詢到的數據的最大值,不是數字沒有意義:select max(max) from 表名;

min返回查詢到的數據的最小值,不是數字沒有意義:select min(math) from 表名;

2.group by(分組)

以每個相同的role為一組,在一個組中分別獲取其中最大、最小、平均值。

select?role,max(salary),min(salary),avg(salary) from?emp?group by?role ;

GROUP BY 子句進行分組以后,需要對分組結果再進行條件過濾時,不能使用 WHERE 語句,而需要用 HAVING

3.HAVING

select?role,max(salary),min(salary),avg(salary) from?emp group by?role having?avg(salary)<1500;

四. 聯合查詢

1.內連接

語法

select 字段 from 1 別名1 [inner] join 2 別名2 on 連接條件 and 其他條件;

select 字段 from 1 別名1,2 別名2 where 連接條件 and 其他條件

2.外連接

外連接分為左外連接和右外連接。如果聯合查詢,左側的表完全顯示我們就說是左外連接;右側的表完 全顯示我們就說是右外連接。

語法:

-- 左外連接,表1完全顯示

select 字段名??from 表名1 left join 表名2 on 連接條件;

-- 右外連接,表2完全顯示

select 字段 from 表名1 right join 表名2 on?連接條件;

3.自連

4 .子查詢

子查詢是指嵌入在其他sql語句中的select語句,也叫嵌套查詢信息

  1. [NOT] IN關鍵字:

Where a in b表示a獲得b值

  1. [NOT] EXISTS關鍵字:

五 合并查詢

為了合并多個select的執行結果,可以使用集合操作符 union,union all。使用UNION 和UNION ALL時,前后查詢的結果集中,字段需要一致。

1.union

該操作符用于取得兩個結果集的并集。當使用該操作符時,會自動去掉結果集中的重復行

2.union all

該操作符用于取得兩個結果集的并集。當使用該操作符時,不會去掉結果集中的重復行

內容重點總結

  1. 數據庫約束

  1. 表關系

  2. 新增

4.查詢

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

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

相關文章

Three.js + React 實戰系列 - 聯系方式提交表單區域 Contact 組件?(表單綁定 + 表單驗證)

對個人主頁設計和實現感興趣的朋友可以訂閱我的專欄哦&#xff01;&#xff01;謝謝大家&#xff01;&#xff01;&#xff01; 在現代網頁中&#xff0c;一個精致的 Contact 區域不僅僅是表單的堆砌&#xff0c;更是用戶與我們建立聯系的第一印象。 在本節課中&#xff0c;我…

UOJ 164【清華集訓2015】V Solution

Description 給定序列 a ( a 1 , a 2 , ? , a n ) a(a_1,a_2,\cdots,a_n) a(a1?,a2?,?,an?)&#xff0c;另有序列 h h h&#xff0c;初始時 h a ha ha. 有 m m m 個操作分五種&#xff1a; add ? ( l , r , v ) \operatorname{add}(l,r,v) add(l,r,v)&#xff1a;…

C++開發過程中的注意事項詳解

目錄 C++開發過程中的注意事項詳解 一、內存管理:避免泄漏與資源浪費 1.1 使用智能指針管理動態內存 1.2 避免手動內存管理的陷阱 1.3 利用RAII機制管理資源 1.4 容器與內存分配 二、安全性:防御攻擊與未定義行為 2.1 輸入驗證與安全編碼 2.2 使用安全的通信協議 2…

Git 時光機:修改Commit信息

前言 列位看官都知道&#xff0c;Git 的每一次 git commit&#xff0c;其中會包含作者&#xff08;Author&#xff09;和提交者&#xff08;Committer&#xff09;的姓名與郵箱。有時可能會因為配置錯誤、切換了開發環境&#xff0c;或者只是單純的手滑&#xff0c;導致 commi…

QSFP+、QSFP28、QSFP-DD接口分別實現40G、100G、200G/400G以太網接口

常用的光模塊結構形式&#xff1a; 1&#xff09;QSFP等效于4個SFP&#xff0c;支持410Gbit/s通道傳輸&#xff0c;可通過4個通道實現40Gbps傳輸速率。與SFP相比&#xff0c;QSFP光模塊的傳輸速率可達SFP光模塊的四倍&#xff0c;在部署40G網絡時可直接使用QSFP光模塊&#xf…

好用的播放器推薦

以下是一些好用的播放器推薦&#xff0c;按照不同平臺和使用場景分類&#xff1a; 電腦端 VLC Media Player 特點&#xff1a;開源、跨平臺&#xff0c;支持幾乎所有的音視頻格式&#xff0c;無需額外安裝解碼器。具備強大的功能&#xff0c;如播放列表管理、視頻和音頻濾鏡、…

Vue基礎(8)_監視屬性、深度監視、監視的簡寫形式

監視屬性(watch)&#xff1a; 1.當被監視的屬性變化時&#xff0c;回調函數(handler)自動調用&#xff0c;進行相關操作。 2.監視的屬性必須存在&#xff0c;才能進行監視&#xff01;&#xff01; 3.監視的兩種寫法&#xff1a; (1).new Vue時傳入watch配置 (2).通過vm.$watc…

AI服務器的作用都有哪些?

根據網絡環境的飛速發展&#xff0c;人工智能技術逐漸入駐到各個行業當中&#xff0c;其中AI服務器則是一種專門用來運行人工智能算法和模型的硬件設備&#xff0c;通常具備高性能計算、大容量存儲和并行計算等多種功能&#xff0c;本文就來詳細講解一下AI服務器的作用&#xf…

[250508] Linux 內核瘦身:棄用 i486 及早期 586 CPU 支持

目錄 Linux 內核計劃精簡&#xff1a;將移除對古董級 CPU 的支持 Linux 內核計劃精簡&#xff1a;將移除對古董級 CPU 的支持 核心動態&#xff1a; Linux 內核開發社區正計劃一項重要的代碼清理工作&#xff0c;目標是移除對非常古老的 i486 及早期 586 (如早期奔騰) CPU 架構…

ROM詳解

一、ROM基礎原理 定義與特性 ROM&#xff08;Read-Only Memory&#xff0c;只讀存儲器&#xff09;是一種非易失性存儲器&#xff0c;數據在制造或編程后永久保存&#xff0c;斷電后不丟失。其核心特性為數據不可修改&#xff08;或需特殊條件修改&#xff09;。 存儲原理&…

解決虛擬機掛起之后的網絡問題

相信很多人都有遇到過自己在VM上面手滑點了個掛起然后就連不了網絡的情況吧&#xff0c;我也遇到了&#xff0c;下面是我的解決辦法&#xff0c;希望對大家有所幫助&#xff01; 我運行完如下&#xff1a; 基本上出現綠色的就說明網絡連上啦&#xff01;

在Star-CCM+中實現UDF并引用場數據和網格數據

在Star-CCM中實現UDF并引用場數據和網格數據 Star-CCM中的用戶自定義函數(UDF)允許用戶通過Java或C/C編程擴展軟件功能。下面我將詳細介紹如何實現UDF并引用模擬數據。 1. UDF基礎實現方法 1.1 創建UDF的步驟 在Star-CCM中&#xff0c;右鍵點擊"工具" → “用戶函…

ConnectionResetError(10054, ‘遠程主機強迫關閉了一個現有的連接,Python爬蟲

文章目錄 ConnectionResetError(10054, 遠程主機強迫關閉了一個現有的連接1.問題描述2.嘗試的解決方法&#xff08;均未生效&#xff09;2.1 請求重試機制2.2 模擬瀏覽器請求頭2.3 關閉連接資源2.4 延遲訪問 3.解決方案&#xff1a;使用 proxy_pool IP 代理池最后參考文章 Conn…

Redis相關命令詳解與原理(一)

目錄 Redis是什么&#xff1f; Redis 的特點和功能 Redis工作模式 與MySQL的區別 安裝編譯和啟動 redis的value類型編碼 string類型 基礎命令 應用 1.對象存儲 2.累加器 3.分布式鎖 4.位運算 list類型 基礎命令 應用 1.棧&#xff08;先進后出 FILO&#xff0…

Starrocks 的 ShortCircuit短路徑

背景 本文基于 Starrocks 3.3.5 本文主要來探索一下Starrocks在FE端怎么實現 短路徑&#xff0c;從而加速點查查詢速度。 在用戶層級需要設置 enable_short_circuit 為true 分析 數據流&#xff1a; 直接到StatementPlanner.createQueryPlan方法&#xff1a; ... OptExpres…

Oracle非歸檔模式遇到文件損壞怎么辦?

昨天夜里基地夜班的兄弟&#xff0c;打電話說有個報表庫連不上了&#xff0c;趕緊起來連上VPN查看一下&#xff0c;看到實例宕機了&#xff0c;先趕緊startup起來。 1.查看報錯信息 環境介紹&#xff1a;Redhat 6.9 Oracle 11.2.0.4 No Archive Mode 查看alert log 關鍵報…

關于一些平時操作系統或者軟件的步驟轉載

關于一些平時操作系統或者軟件的步驟轉載 關于python環境搭建 關于Ubuntu 1. 雙系統之Ubuntu快速卸載 2. VMware安裝Ubuntu虛擬機實現COpenCV代碼在虛擬機下運行教程 3. ubuntu 下 opencv的安裝以及配置&#xff08;親測有效&#xff09; 4. Ubuntu將c編譯成.so文件并測試 5…

hz2新建Keyword頁面

新建一個single-keywords.php即可&#xff0c;需要篩選項再建taxonomy-knowledge-category.php 參考&#xff1a;https://www.tkwlkj.com/customize-wordpress-category-pages.html WordPress中使用了ACF創建了自定義產品分類products&#xff0c;現在想實現自定義產品分類下的…

VRRP協議-IP地址冗余配置

有兩個服務器172.16.42.1和172.16.42.121&#xff0c;通過VRRP協議使兩臺設備共用一個虛擬地址172.16.42.100&#xff0c;當 172.16.42.1 可用時&#xff0c;它會作為主路由器使用虛擬 IP 地址&#xff1b;當它不可用時&#xff0c;172.16.42.121 會接管虛擬 IP 地址&#xff0…

21、DeepSeekMath論文筆記(GRPO)

DeepSeekMath論文筆記 0、研究背景與目標1、GRPO結構GRPO結構PPO知識點**1. PPO的網絡模型結構****2. GAE&#xff08;廣義優勢估計&#xff09;原理****1. 優勢函數的定義**2.GAE&#xff08;廣義優勢估計&#xff09; 2、關鍵技術與方法3、核心實驗結果4、結論與未來方向關鍵…