Mysql基礎教程(11):DISTINCT

MySQL DISTINCT 用法和實例

當使用 SELECT 查詢數據時,我們可能會得到一些重復的行。比如學生表中有很多重復的年齡。如果想得到一個唯一的、沒有重復記錄的結果集,就需要用到 DISTINCT 關鍵字。

MySQL DISTINCT用法

在 SELECT 語句中使用 DISTINCT 關鍵字會返回一個沒有重復記錄行的結果集。 DISTINCT 的用法如下:

SELECT DISTINCTcolumns_list
FROMtable_name

說明:

  • DISTINCT 關鍵字位于 SELECT 關鍵字的后面。
  • columns_list 指定要查詢的字段列表,也是 DISTINCT 評估記錄行是否唯一的字段.
  • columns_list 可以是一個字段,也可以是多個字段
  • columns_list 也可以是 *

MySQL DISTINCT實例

DISTINCT 單個字段

使用 DISTINCT 刪除重復的數據,返回唯一的年齡列表:

SELECT DISTINCT age FROM students

在這里插入圖片描述

DISTINCT 多個字段

DISTINCT 還可以清除多個字段的重復值。當指定多個字段值時, DISTINCT 使用多個字段組合確定記錄行的唯一性。

SELECT DISTINCT age, gender FROM students;

在這里插入圖片描述

DISTINCT 與 NULL

當 DISTINCT 遇到 NULL 值時,只保留一個 NULL 值。因為 DISTINCT 認為所有的 NULL 值都是相同的,這與字段的類型無關。

SELECT *
FROM (SELECT NULLUNION ALLSELECT NULLUNION ALLSELECT NULL) t;

在這里插入圖片描述

當使用DISTINCT之后

SELECT DISTINCT *
FROM (SELECT NULLUNION ALLSELECT NULLUNION ALLSELECT NULL) t;

在這里插入圖片描述

結論

  • DISTINCT 清除 SELECT 結果集中的重復記錄行
  • DISTINCT 可以用一個字段或者多個字段,也可以用 *。
  • DISTINCT 多個 NULL 值只保留一個 NULL 值

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

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

相關文章

Spring Boot 項目中使用 JSP

文章目錄 Spring Boot 項目中使用 JSP項目結構引入依賴包編寫頁面和后臺運行方式一:Maven 命令運行方式二:在 IDEA 中運行方式三:打 war 包部署運行 Spring Boot 項目中使用 JSP 在 Spring Boot 項目中不是不可以使用 JSP 。想在 Spring Boo…

【React】封裝一個好用方便的消息框(Hooks Bootstrap 實踐)

引言 以 Bootstrap 為例,使用模態框編寫一個簡單的消息框: import { useState } from "react"; import { Modal } from "react-bootstrap"; import Button from "react-bootstrap/Button"; import bootstrap/dist/css/b…

打開C語言常用的內存函數大門(二)—— memmove()函數 (內含memmove的講解和模擬實現)

文章目錄 1. 前言2. memmove()函數2.1 memmove()函數與memcpy()函數的差異2.2 memmove()函數的原型2.3 memmove()函數的使用案例 3. memmove()函數的模擬實現4. 總結 1. 前言 在之前,我向大家介紹了C語言中的一個常用的內存函數memcpy函數。如果你還沒看的話&#…

碼隨想錄算法訓練營Day 52 | 動態規劃part13 | 300.最長遞增子序列、674. 最長連續遞增序列 、718. 最長重復子數組

代碼隨想錄算法訓練營Day 52 | 動態規劃part13 | 300.最長遞增子序列、674. 最長連續遞增序列 、718. 最長重復子數組 文章目錄 代碼隨想錄算法訓練營Day 52 | 動態規劃part13 | 300.最長遞增子序列、674. 最長連續遞增序列 、718. 最長重復子數組300.最長遞增子序列一、一維DP…

12k Star!Continue:Github Copilot 開源本地版、開發效率和隱私保護兼得、豐富功能、LLM全覆蓋!

原文鏈接:(更好排版、視頻播放、社群交流、最新AI開源項目、AI工具分享都在這個公眾號!) 12k Star!Continue:Github Copilot 開源本地版、開發效率和隱私保護兼得、豐富功能、LLM全覆蓋! &…

Beamer中二階導、一階導數的顯示問題

Beamer中二階導、一階導數的顯示問題 在beamer中表示 f ′ f f′和 f ′ ′ f f′′時發現導數符號距離 f f f很近 \documentclass{beamer} \usepackage{amsmath,amssymb}\begin{document} \begin{frame}\frametitle{Derivative}Derivative:\[f^{\prime}(x) \quad f \quad…

C# 讀取txt大文件

1GB以下 using System.Text;namespace DotnetReadTxt;class Program {static void Main(string[] args){try{Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);var gb2312 Encoding.GetEncoding("GB2312");int index 0;using (StreamReader sr ne…

conda與pip的鏡像源與代理設置

conda與pip的鏡像源與代理設置 一、前言二、conda鏡像源設置2.1conda默認鏡像源介紹2.2通過終端設置鏡像源2.3通過配置文件設置鏡像源 三、pip鏡像源設置3.1pip默認鏡像源介紹3.2通過終端臨時設置鏡像源3.3通過配置文件設置一個或多個鏡像源 四、conda代理設置4.1通過終端設置代…

數據結構與算法筆記:基礎篇 - 棧:如何實現瀏覽器的前進和后退功能?

概述 瀏覽器的前進、后退功能,你肯定很熟悉吧? 當依次訪問完一串頁面 a-b-c 之后,點擊瀏覽器的后退按鈕,就可以查看之前瀏覽過的頁面 b 和 a。當后退到頁面 a,點擊前進按鈕,就可以重新查看頁面 b 和 c。但…

放開了去的 ulimit

放開了去的 ulimit 放開了去的 ulimitulimit簡介臨時修改打開文件數目永久修改系統總打開句柄限制更多信息 放開了去的 ulimit ulimit簡介 對于高并發或者頻繁讀寫文件的應用程序而言,有時可能需要修改系統能夠打開的最多文件句柄數,否則就可能會出現t…

HTTPS 原理技術

HTTPS原理技術 背景簡介原理總結 背景 隨著年齡的增長,很多曾經爛熟于心的技術原理已被歲月摩擦得愈發模糊起來,技術出身的人總是很難放下一些執念,遂將這些知識整理成文,以紀念曾經努力學習奮斗的日子。本文內容并非完全原創&am…

Element-ui使用上傳時彈框選擇文件類型

實現效果 1,點擊上傳,上傳文件; 2,選擇文件; 3,彈框選擇文件類型; 4,選擇類型后確定上傳; 一,上傳 跳過; 二,定義彈框下拉框…

Coolmuster Android Assistant: 手機數據管理的全能助手

在數字化時代,智能手機不僅是通訊工具,更是個人數據的中心。隨著數據量的不斷增加,如何有效管理和保護這些數據成為了一個重要議題。Coolmuster Android Assistant應運而生,它是一款專為安卓用戶設計的綜合數據管理軟件&#xff0…

EXCEL數據透視圖中的日期字段,怎樣自動分出年、季度、月的功能?

在excel里,這個果然是有個設置的地方,修改后就好了。 點擊文件選項卡,選項,在高級里,將圖示選項的勾選給取消,然后再創建數據透視表或透視圖,日期就不會自動組合了: 這個選項只對新…

遙感圖像的深度學習的任務類型

在遙感圖像的深度學習任務中,利用深度學習技術處理和分析遙感圖像已經成為一個重要的研究方向。遙感圖像來自衛星、無人機等設備,包含了豐富的地球表面信息。以下是遙感圖像深度學習中的主要任務類型: 1. 圖像分類(Image Classif…

Flutter 中的 SliverPrototypeExtentList 小部件:全面指南

Flutter 中的 SliverPrototypeExtentList 小部件:全面指南 Flutter 是一個功能強大的 UI 框架,由 Google 開發,允許開發者使用 Dart 語言構建跨平臺的移動、Web 和桌面應用。在 Flutter 的豐富組件庫中,SliverPrototypeExtentLis…

山東理工大學第十六屆ACM程序設計競賽(同步賽)

山東理工大學第十六屆ACM程序設計競賽(同步賽) B、Q的網課 1、創建一個結構體,來保存我們要輸入的網課名和學時,并且對學時初始化為-1 2、然后w次輸入網課名,對每次輸入減去原先網課名對應學時,統計網課剩余…

關于torch.size和tensor的維度筆記

torch.Size([200, 1])和torch.Size([200])的區別是什么? torch.Size([200, 1]) 和 torch.Size([200]) 是兩個不同形狀的張量 (tensor) 大小。它們的區別如下: torch.Size([200, 1]): 這是一個2D張量,形狀是200行1列。這種形狀通常用來表示一個列向量或…

suffix-tree教程(個人總結)

背景 在計算機科學和生物信息學中,字符串處理是一個非常重要的領域。無論是搜索引擎、基因序列分析,還是壓縮算法,都離不開高效的字符串處理。傳統的字符串匹配算法,如暴力搜索、Knuth-Morris-Pratt (KMP) 算法和 Boyer-Moore 算…

Android14 WMS-IWindow介紹

IWindow是很重要的,官方介紹是API back to a client window that the Window Manager uses to inform it of interesting things happening. 也就是說是是用于WMS回調客戶端的,當窗口有一些改變時,WMS及時調用客戶端接口,讓客戶端…