SQL 中的 MIN 和 MAX 以及常見函數詳解及示例演示

SQL MIN() 和 MAX() 函數

SQL中的MIN()函數和MAX()函數用于查找所選列的最小值和最大值,分別。以下是它們的用法和示例:

MIN() 函數

MIN()函數返回所選列的最小值。

示例:

查找Products表中的最低價格:

SELECT MIN(Price)
FROM Products;

MAX() 函數

MAX()函數返回所選列的最大值。

示例:

查找Products表中的最高價格:

SELECT MAX(Price)
FROM Products;

語法

MIN()和MAX()函數的一般語法如下:

SELECT MIN(column_name)
FROM table_name
WHERE condition;SELECT MAX(column_name)
FROM table_name
WHERE condition;

演示數據庫

以下是示例中使用的Products表的一部分:

ProductIDProductNameSupplierIDCategoryIDUnitPrice
1Chais1110 boxes x 20 bags18
2Chang1124 - 12 oz bottles19
3Aniseed Syrup1212 - 550 ml bottles10
4Chef Anton’s Cajun Seasoning2248 - 6 oz jars22
5Chef Anton’s Gumbo Mix2236 boxes21.35

設置列名(別名)

當使用MIN()或MAX()函數時,返回的列默認將命名為MIN(field)或MAX(field)。要為列指定新名稱,請使用AS關鍵字:

示例:

SELECT MIN(Price) AS SmallestPrice
FROM Products;

這將返回名為"SmallestPrice"的列,其中包含Products表中的最低價格。

SQL COUNT() 函數

SQL中的COUNT()函數用于返回符合指定條件的行數,通常用于統計行的數量。以下是它的用法和示例:

示例

查找Products表中的產品總數:

SELECT COUNT(*)
FROM Products;

語法

COUNT()函數的一般語法如下:

SELECT COUNT(column_name)
FROM table_name
WHERE condition;

演示數據庫

以下是示例中使用的Products表的一部分:

ProductIDProductNameSupplierIDCategoryIDUnitPrice
1Chais1110 boxes x 20 bags18
2Chang1124 - 12 oz bottles19
3Aniseed Syrup1212 - 550 ml bottles10
4Chef Anton’s Cajun Seasoning2248 - 6 oz jars22
5Chef Anton’s Gumbo Mix2236 boxes21.35

添加 WHERE 子句

您可以添加WHERE子句以指定條件:

示例

查找價格高于 20 的產品數量:

SELECT COUNT(ProductID)
FROM Products
WHERE Price > 20;

指定列名

您可以指定列名而不是使用星號(*)。

如果指定列名,將不會計算NULL值。

示例

查找ProductName不為NULL的產品數量:

SELECT COUNT(ProductName)
FROM Products;

如果表中包含NULL值,您可以使用IS NOT NULL條件來排除NULL值。例如:

SELECT COUNT(ProductName)
FROM Products
WHERE ProductName IS NOT NULL;

忽略重復項

您可以使用COUNT函數中的DISTINCT關鍵字來忽略重復項。

如果指定DISTINCT,具有相同值的行將被計為一行。

示例

Products表中有多少不同的價格:

SELECT COUNT(DISTINCT Price)
FROM Products;

使用別名

您可以使用AS關鍵字為計數列指定別名。

示例

將計數列命名為 “記錄數”:

SELECT COUNT(*) AS "記錄數"
FROM Products;

使用別名可以使結果集的列名更具可讀性。

SQL SUM() 函數

SQL中的SUM()函數用于返回數值列的總和,通常用于計算某一列的總值。以下是它的用法和示例:

示例

返回OrderDetails表中所有Quantity字段的總和:

SELECT SUM(Quantity)
FROM OrderDetails;

語法

SUM()函數的一般語法如下:

SELECT SUM(column_name)
FROM table_name
WHERE condition;

演示數據庫

以下是示例中使用的OrderDetails表的一部分:

OrderDetailIDOrderIDProductIDQuantity
1102481112
2102484210
310248725
410249149
5102495140

添加 WHERE 子句

您可以添加WHERE子句以指定條件:

示例

返回具有ProductID為11的產品所生成的訂單數量:

SELECT SUM(Quantity)
FROM OrderDetails
WHERE ProductID = 11;

使用別名

您可以使用AS關鍵字為總結列指定別名。

示例

將列命名為 “總計”:

SELECT SUM(Quantity) AS total
FROM OrderDetails;

使用別名可以使結果集的列名更具可讀性。

使用表達式的 SUM()

SUM()函數內的參數也可以是一個表達式。

如果我們假設OrderDetails列中的每個產品價格為10美元,我們可以通過將每個數量乘以10來找到以美元計算的總收入:

示例

SUM()括號內使用表達式:

SELECT SUM(Quantity * 10)
FROM OrderDetails;

我們還可以將OrderDetails表與Products表連接以找到實際金額,而不是假定為10美元:

示例

OrderDetailsProducts連接,并使用SUM()查找總金額:

SELECT SUM(Price * Quantity)
FROM OrderDetails
LEFT JOIN Products ON OrderDetails.ProductID = Products.ProductID;

SQL AVG() 函數

SQL中的AVG()函數用于返回數值列的平均值。通常,它用于計算某一列的平均值。以下是AVG()函數的用法和示例:

示例

查找所有產品的平均價格:

SELECT AVG(Price)
FROM Products;

語法

AVG()函數的一般語法如下:

SELECT AVG(column_name)
FROM table_name
WHERE condition;

演示數據庫

以下是示例中使用的Products表的一部分:

ProductIDProductNameSupplierIDCategoryIDUnitPrice
1Chais1110 boxes x 20 bags18
2Chang1124 - 12 oz bottles19
3Aniseed Syrup1212 - 550 ml bottles10
4Chef Anton’s Cajun Seasoning2248 - 6 oz jars22
5Chef Anton’s Gumbo Mix2236 boxes21.35

添加 WHERE 子句

您可以添加WHERE子句以指定條件:

示例

返回類別1中產品的平均價格:

SELECT AVG(Price)
FROM Products
WHERE CategoryID = 1;

使用別名

您可以使用AS關鍵字為平均列指定別名。

示例

將列命名為 “平均價格”:

SELECT AVG(Price) AS [平均價格]
FROM Products;

高于平均價格

要列出所有價格高于平均價格的記錄,我們可以在子查詢中使用AVG()函數:

示例

返回價格高于平均價格的所有產品:

SELECT * FROM Products
WHERE Price > (SELECT AVG(Price) FROM Products);

這將返回所有價格高于平均價格的產品。

最后

為了方便其他設備和平臺的小伙伴觀看往期文章:公眾號搜索Let us Coding,或者掃描下方二維碼,關注公眾號,即可獲取最新文章。

看完如果覺得有幫助,歡迎點贊、收藏關注

在這里插入圖片描述

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

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

相關文章

js 獲取當前窗口顯示的放大比例

可以獲取當前窗口顯示的放大比例,也稱為設備像素比 (devicepixelratio) 。這通常用于處理高DPI (高分辨率)屏幕上的視圖縮放。您可以使用window.devicePixelRatio 屬性來獲得當前設備像素比。 以下是一個簡單的JavaScript示例,演示如何獲取設備像素比: j…

基于獼猴Spike運動解碼的不同解碼方法性能對比

公開數據集中文版詳細描述 參考前文:https://editor.csdn.net/md/?not_checkout1&spm1011.2124.3001.6192神經元Spike信號分析 參考前文:https://blog.csdn.net/qq_43811536/article/details/134359566?spm1001.2014.3001.5501神經元運動調制分析 …

2023 年戴森設計大獎得主是誰?給大樓降溫、爭取救援機會

2023 年戴森設計大獎得主是誰?給大樓降溫、爭取救援機會 ?編輯拉風的極客2023/11/22 摘要 當今社會除了持續不斷對科技創新保持注目,還有很多年輕發明家為了實際場景的難題提供解決方案。 11 月 15 日,2023 年戴森設計大獎國際大獎名單正…

Doris DDL和DML

1 創建用戶和數據庫 1)創建test用戶 mysql -h hadoop1 -P 9030 -uroot -p create user test identified by test; 2)創建數據庫 create database test_db; 3)用戶授權

2023年危險化學品生產單位安全生產管理人員證模擬考試題庫及危險化學品生產單位安全生產管理人員理論考試試題

題庫來源:安全生產模擬考試一點通公眾號小程序 2023年危險化學品生產單位安全生產管理人員證模擬考試題庫及危險化學品生產單位安全生產管理人員理論考試試題是由安全生產模擬考試一點通提供,危險化學品生產單位安全生產管理人員證模擬考試題庫是根據危…

文件的原理和應用

常識: 1 文件包括屬性和內容 2 文件有打開和未打開文件, 3 本文先討論誰打開的文件,以及如何管理已經打開的文件 一 回憶c接口 1 fopen 我們在test.c里面用一下fopen函數,不存在打開的文件會默認創建,那為什么默認新建在當前…

【Kettle實戰】字符串處理及網絡請求JSON格式處理

經過大量的kettle操作實踐,我們會漸漸掌握一些技巧,大大減輕清洗的工作量。比如在哪里 處理字符串更方便,在哪兒處理更合理都是一個取舍問題。 字符串拼接 MySQL中使用concat(字段1,字段2),但是如果“字段2”為NULL,結…

高速公路智能公專融合調度系統方案

在現代高速公路交通設施中,無線對講通信系統已經慢慢成為至關重要的環節。完善無線通信系統可以實現語音和數據的實時傳輸,確保調度中心和現場工作人員的及時溝通,快速響應和提供協調支持。隨著國內高速公路的發展,通信系統建設需…

11月22日,每日信息差

今天是2023年11月22日,以下是為您準備的15條信息差 第一、微軟將投資5億美元在魁北克擴大云計算和人工智能基礎設施 第二、奇安信預計與中國電子CEC業務量大幅增加 第三、極數云舟發布云舟數據編織系統“Ark Fabric” 第四、美國企業對特定電子眼鏡產品及其組件…

如何在windows使用別名遠程執行命令

需求背景 在開發中,需要在服務器執行腳本,需要如下幾步操作: 1.打開xshell 2.登錄服務器 3.進入命令腳本的路徑 4.執行腳本 但是,作為懶人來說,操作太繁瑣了,真麻煩,能不能一鍵就解決那么多操作?所以,開始研究windows有沒有這個東西,而且不需要額外的軟件就可以實現的.結…

ABeam Recruiting | ABeam旗下德碩管理咨詢(上海)最新招聘崗位

誠聘英才 市場部經理 招聘背景 作為起源于亞洲的全球化咨詢公司, ABeam立志成為中國、乃至全球的杰出品牌 本次招聘崗位 以加快ABeam中國本土各法人 在中國市場的品牌推廣、提高企業知名度 強化Marketing部門的體制為目標 工作職責 在現有的PR業務基礎上&#…

PyTorch離線安裝

文章目錄 python安裝1. Anaconda 下載2. Anaconda 安裝pytorch安裝3. 顯卡配置(無 Nvidia 顯卡的略過)4. 新建虛擬環境,用于存放pytorch5. 安裝 CUDA6 安裝pytorch(torch,torchvision,torchaudio)7. 驗證是否安裝成功python安裝 1. Anaconda 下載 在機器學習,深度學習中…

C++多線程學習(二):多線程通信和鎖

參考引用 C11 14 17 20 多線程從原理到線程池實戰代碼運行環境:Visual Studio 2019 1. 多線程狀態 1.1 線程狀態說明 初始化 (lnit):該線程正在被創建就緒 (Ready):該線程在就緒列表中,等待 CPU 調度運行 (Running):…

xss-labs靶場6-10關

文章目錄 前言一、靶場6-10關1、關卡62、關卡73、關卡84、關卡95、關卡10 總結 前言 此文章只用于學習和反思鞏固xss攻擊知識,禁止用于做非法攻擊。注意靶場是可以練習的平臺,不能隨意去尚未授權的網站做滲透測試!!! …

在win10上安裝pytorch-gpu版本2

安裝anaconda即下載了python,還可以創建虛擬環境。 目錄 1.1 anaconda安裝 1.2 pytorch-gpu安裝 1.1 Anaconda安裝 anaconda的安裝請看我之前發的tensoflow-gpu安裝,里面有詳細的安裝過程,這里不做重復描述,傳送門 1.2 pyt…

羊大師提示,羊奶都有哪些驚人功效?

羊奶不僅是一種美味的健康飲品,在近年來備受矚目的的健康圈子里,羊奶還被賦予了更多的功效,成為一種備受推崇的保健品。羊奶不但富含營養,而且還有著非常多的益處,它能夠用來美容、保健,甚至還可以治療某些…

【Java】多線程-單例模式/volatile-指令重排序

單例模式即代碼中只有一個實例的模式 適用場景:有些場景下,有的類只能有一個對象,不能有多個 要注意:在單例模式下,要保證不能產生多個實例 1、餓漢模式 class Singleton{private static Singleton instance new …

Mybatis plus 簡介

簡介 MyBatis-Plus (opens new window)(簡稱 MP)是一個 MyBatis (opens new window)的增強工具,在 MyBatis 的基礎上只做增強不做改變,為簡化開發、提高效率而生。 官網:https://baomidou.com/pages/24112f/ 特性 無侵入&…

英語常見的21組重點必背短語

短語: at at once 立刻,馬上 at least 至少 at most 最多 at last 最后 at home 在家 at noon 在中午 at night 在夜晚 at times 有時,偶爾 at school 在上學 at table 在吃飯 at present 目前,現在 at work 在工作 at all 全然&#xff0c…

《QT從基礎到進階·三十八》QWidget實現炫酷log日志打印界面

QWidget實現了log日志的打印功能,不僅可以在界面顯示,還可以生成打印日志。先來看下效果,源碼放在文章末尾: LogPlugin插件類管理log所有功能,它可以獲取Log界面并能打印正常信息,警告信息和錯誤信息&…