Oracle的去重函数 distinct
原贴地址:http://www.cnblogs.com/rainman/archive/2013/05/03/3058451.html#m0
SQL中distinct的用法
- 1.作用于单列
- 2.作用于多列
- 3.COUNT统计
- 4.distinct必须放在开头
- 5.其他
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct用于返回唯一不同的值。
表A:
表B:
1.作用于单列
select distinct name from A
执行后结果如下:
2.作用于多列
示例2.1
select distinct name, id from A
执行后结果如下:
实际上是根据name和id两个字段来去重的,这种方式Access和SQL Server同时支持。
示例2.2
select distinct xing, ming from B
返回如下结果:
返回的结果为两行,这说明distinct并非是对xing和ming两列“字符串拼接”后再去重的,而是分别作用于了xing和ming列。
3.COUNT统计
select count(distinct name) from A; --表中name去重后的数目, SQL Server支持,而Access不支持
count是不能统计多个字段的,下面的SQL在SQL Server和Access中都无法运行。
select count(distinct name, id) from A;
若想使用,请使用嵌套查询,如下:
select count(*) from (select distinct xing, name from B) AS M;
4.distinct必须放在开头
select id, distinct name from A; --会提示错误,因为distinct必须放在开头
5.其他
distinct语句中select显示的字段只能是distinct指定的字段,其他字段是不可能出现的。例如,假如表A有“备注”列,如果想获取distinc name,以及对应的“备注”字段,想直接通过distinct是不可能实现的。但可以通过其他方法实现关于SQL Server将一列的多行内容拼接成一行的问题讨论
转载于:https://www.cnblogs.com/zuizui1204/p/6111615.html
Oracle的去重函数 distinct相关推荐
- 去重函数distinct
distinct去重 函数在实际业务中还是很常用的. 1.select distinct job from emp;//去重相同的岗位 2.select ename.distinct job from ...
- Oracle去重函数distinct
distinct用于返回唯一不同的值. 表table1: id value 1 a 1 a 2 b 3 b 4 c 5 c 表table2: username password tom s123456 ...
- oracle分组去重函数
row_number() over(partition by nv.id order by 1) rn Row_number() over( order by OPERATE_DATE) --根据字段 ...
- oracle中wm_concat函数去重,oracle-常用函数-wm_contact
oracle wm_concat(column)函数使我们经常会使用到的,下面就教您如何使用oraclewm_concat(column)函数实现字段合并 如: shopping: --------- ...
- Oracle中select函数以及分组多表连接等重要点以及示例
Oracle中select函数以及分组多表连接等重要点 函数 –函数 –内置函数和自定义函数 –单行函数:一条记录返回一个结果的 –多行函数|组函数|聚合函数:多条记录返回一条结果的 单行函数 单行函 ...
- Oracle 内置函数
F.1字符函数--返回字符值 这些函数全都接收的是字符族类型的参数(CHR除外)并且返回字符值.除了特别说明的之外,这些函数大部分返回VARCHAR2类型的数值.字符函数的返回类型所受的限制和基本数据 ...
- Oracle的sql 函数
Oracle的SQL函数 Oracle的SQL函数分为单行函数和多行函数.单行函数只对单条记录有效,多行函数对多条记录有效. 单行函数包括,字符.数字.日期.转换和普通函数. 字符函数举例: ?全小写 ...
- [转]ORACLE日期时间函数大全
本文转自:http://www.cnblogs.com/chuncn/archive/2009/04/29/1381282.html ORACLE日期时间函数大全 TO_DATE格式(以时间:2007 ...
- 重写Oracle的wm_concat函数,自定义分隔符、排序
oracle中,wm_concat函数是一个聚合函数,和mysql中的group_concat函数类似,不过group_concat函数比较强大,可以定义分隔符和排序,当然所谓强大是相对的,这里假使我 ...
最新文章
- Cassandra使用的各种策略
- B/S,C/S简单介绍
- 专访Connolly:为什么我们需要手动回归测试宣言?
- cfree是c语言程序的什么,用C-FREE编写的C语言程序
- linux中samba详解,详解linux系列之samba的安装及配置
- 工作374-前端margin:0 auto为什么会失效
- python实现dem输出三维模型_python DEM数据可视化
- mac 上压测工具_Mac上的触控板/鼠标增强工具推荐
- Objective-C ,ios,iphone开发基础:UIAlertView使用详解
- 数学实验matlab课后习题,数学实验练习题(MATLAB)
- 铝板展开插件_铝板行业排料Rhino插件
- vue使用阿里巴巴矢量图标
- NVIDIA Jetson TK1学习与开发(四):一些细节问题
- 智能窗帘电机究竟有何亮点?智汀小米有何优势?
- 一个完整的项目管理流程
- 基于宜搭的《T恤尺码收集》应用搭建最佳实践
- Binder源码阅读指南之java层,作为Android开发程序员
- Bootstrap 教程第四课:制作一组功能图标按钮
- MockMockito使用手册
- Revit二次开发之族库管理系统
热门文章
- execle java,Java使用POI操作Excel
- 帝国cms怎么搭建python环境_自己写的帝国cms后台文章添加增加二级或多级联动功能...
- net framework安装有什么影响_阳台护栏安装不当会造成什么影响
- 我的大数据方法论:求扔砖
- java hssfsheet_Java中,使用HSSFSheet创建excel模板如何创建一列两行的数据?
- Leetcode-213:打家劫舍 II
- 高中信息技术——进制与编码刷题点整理
- css3 flex布局九宫格,css3最全flex布局结构整理
- android list布局,android-为具有不同项目布局的ListViews创建ViewHolders
- matlab 删掉空行,在MATLAB中使用XLSWRITE:如何删除空单元格?