当前位置: 首页 > ops >正文

oracle distinct的用法,Oracle Distinct

oracle函数 的 Oracle Distinct

在本教程中,将学习如何使用Oracle SELECT DISTINCT语句从表中查询不同的数据。

Oracle SELECT DISTINCT语句简介

在语句中使用DISTINCT子句来过滤结果集中的重复行。它确保在SELECT子句中返回指定的一列或多列的值是唯一的。

以下说明了SELECT DISTINCT语句的语法:

SELECT DISTINCT

column_1

FROM

table_name;

在上面语法中,table_name表的column_1列中的值将进行比较以过滤重复项。

要根据多列检索唯一数据,只需要在SELECT子句中指定列的列表,如下所示:

SELECT

DISTINCT column_1,

column_2,

...

FROM

table_name;

在此语法中,column_1,column_2和column_n中的值的组合用于确定数据的唯一性。

DISTINCT子句只能在SELECT语句中使用。

请注意,DISTINCT不是SQL标准的UNIQUE的同义词。总是使用DISTINCT而不使用UNIQUE是一个好的习惯。

Oracle DISTINCT示例

下面来看看如何使用SELECT DISTINCT来看看它是如何工作的一些例子。

1. Oracle DISTINCT在一列上应用的例子

查看中的联系人(contacts)表:

912e5aa7b13b8ca1e40b423a6cfb9ee5.png

以下示例检索所有联系人的名字:

SELECT first_name

FROM contacts

ORDER BY first_name;

执行上面查询语句,得到以下结果 -

e20d786a540483504b3b52f0148d68af.png

该查询返回了319行,表示联系人(contacts)表有319行。

要获得唯一的联系人名字,可以将DISTINCT关键字添加到上面的SELECT语句中,如下所示:

SELECT DISTINCT first_name

FROM contacts

ORDER BY first_name;

执行上面查询语句,得到以下结果 -

4a865fcd1c059d971714e910b605ce03.png

该查询返回了302行,表示联系人(contacts)表有17行是重复的,它们已经被过滤了。

2. Oracle DISTINCT应用多列示例

看下面的order_items表,表的结构如下:

944c48b937a2f5b1bf9c75e32e8f3f21.png

以下语句从order_items表中选择不同的产品ID和数量:

SELECT

DISTINCT product_id,

quantity

FROM

ORDER_ITEMS

ORDER BY product_id;

执行上面查询语句,得到以下结果 -

b5abfb720cd7803626e13ee85db1866d.png

在此示例中,product_id和quantity列的值都用于评估结果集中行的唯一性。

3. Oracle DISTINCT和NULL

DISTINCT将NULL值视为重复值。如果使用SELECT DISTINCT语句从具有多个NULL值的列中查询数据,则结果集只包含一个NULL值。

请参阅中的locations表,结构如下所示 -

3d4c270bc96931495c67ae20fb61ada4.png

以下语句从state列中检索具有多个NULL值的数据:

SELECT DISTINCT state

FROM locations

ORDER BY state NULLS FIRST;

执行上面示例代码,得到以下结果 -

8bc33aa8ed87b86de57402f8a2148f96.png

正如上图所看到的,只返回一个NULL值。

在本教程中,您已学习如何使用SELECT DISTINCT语句来获取基于一列或多列的过滤获取唯一数据。

http://www.xdnf.cn/news/11006.html

相关文章:

  • 一个简单的HTML网页 、个人主页网页设计(HTML+CSS)
  • 从客户端中检测到有潜在危险的 request.form值[解决方法]
  • linux系统使用POSIX信号量实现多线程同步sem_init sem_wait sem_post sem_destroy
  • CrossApp简介
  • 基于STM32语音控制的MP3播放器
  • 真没想到!时隔3年,被废掉武功的快播,依然是最受欢迎的播放器
  • asp.net发送电子邮件_如何在ASP.NET Core中发送电子邮件
  • NC网络工具的使用
  • 华东政法大学教学管理系统_华东政法大学教学管理信息系统登录入口、成绩查询网上选课查分...
  • 360手机刷机失败变黑砖,救砖教程
  • 常用网络特殊符号大全(含彩色表情符号)
  • android 4.3特殊功能,Android 4.3有什么新功能
  • 一次局域网入侵全过程
  • 2021-06-15——这56个免费资源网站,能让你永久告别资源付费!
  • Mac OS X – BootCamp安装Win7小记
  • URL编码解析
  • 关于小凡模拟器设置完后找不到所要配置文件的问题
  • 计算机基础知识
  • python多线程爬取某网站全部h漫画_Python多线程爬虫爬取网页图片
  • dhtmlxgantt异步读取数据库数据
  • 当Windows安全中心服务无法启动时怎么办?这里提供几个解决方案
  • 超炫Android2.1 谷歌Nexus One界面赏析
  • 前端如何做单元测试? 看这篇就入门了
  • 【云计算学习教程】探讨私有云计算平台的搭建(附带3套解决方案)_私有云云平台解决方案学习路径
  • c:out标签中的escapeXML属性
  • 从那里进入EI检索号查询入口?
  • alfafile中转站免费_中转站全集免费在线观看-手机看中转站HD完整版 - 穷TV_院线大片影视大全...
  • 从报名到领证:软考初级【网络管理员】报名考试全攻略
  • 软件项目管理:使用PERT评价不确定性的方法
  • FinePlus v1.2