下面先来看看例子:

table表

字段1     字段2    id        name    1           a    2           b    3           c    4           c    5           b

库结构大概这样,这只是一个简单的例子,实际情况会复杂得多。

比如我想用一条语句查询得到name不重复的所有数据,那就必须使用distinct去掉多余的重复记录。

select distinct name from table 得到的结果是:

----------

name    a    b    c

好像达到效果了,可是,我想要得到的是id值呢?改一下查询语句吧:

select distinct name, id from table

结果会是:

----------

id name    1 a    2 b    3 c    4 c    5 b

distinct怎么没起作用?作用是起了的,不过他同时作用了两个字段,也就是必须得id与name都相同的才会被排除。。。。。。。

我们再改改查询语句:

select id, distinct name from table

很遗憾,除了错误信息你什么也得不到,distinct必须放在开头。难到不能把distinct放到where条件里?能,照样报错。

------------------------------------------------------------------------------------------------------------

下面方法也不可行:

select *, count(distinct name) from table group by name

结果:

ORA-00979: not a GROUP BY expression

00979. 00000 - "not a GROUP BY expression"

依然报错,

group by 必须放在 order by 和 limit之前,不然会报错

------------------------------------------------------------------------------------------------------------

偶认为这样可行

select max(id), name from table group by name;

结果:

id name

1  a

2  b

4  c

5  d

用法二:

一、数据:

1    zjx    001    AAAiBZAAQAAAAVPAAA

2    zjx    002    AAAiBZAAQAAAAVPAAB

3    zjx    001    AAAiBZAAQAAAAVPAAC

二、多字段

select distinct t.name,t.code from test1 t

select distinct t.* from test1 t

结果:

1    zjx    001

2    zjx    002

三、单字段

select distinct t.name from test1 t

结果:

1    zjx

oracle distinct的用法,oracle中distinct的用法详解相关推荐

  1. php中的where用法,ThinkPHP中where()使用方法详解

    本文介绍thinkphp的where()方法的用法.where方法可以用于对数据库操作的结果进行筛选.即sql查询语句中的where子句. 今天来给大家讲下查询最常用但也是最复杂的where方法,wh ...

  2. session在PHP中的用法,PHP中session使用方法详解

    php中session详解 综述 Session指的就是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站所花费的时间.从上述的定义中我们可以看到,Session实际 ...

  3. python3super用法_Python3中的super()函数详解

    关于Python3中的super()函数 我们都知道,在Python3中子类在继承父类的时候,当子类中的方法与父类中的方法重名时,子类中的方法会覆盖父类中的方法, 那么,如果我们想实现同时调用父类和子 ...

  4. java 建造者实际中的用法_java中j建造者模式详解和使用方法

    建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 一个 Builder 类会一步一步构造最 ...

  5. 在oracle中使用存储过程,如何在ORACLE中使用JAVA存储过程(详解)

    如何在Oracle中使用Java存储过程 (详解) 一.如何缔造java存储过程? 通常有三种步骤来缔造java存储过程. 1.使用oracle的sql语句来缔造: e.g.使用create or r ...

  6. 《oracle大型数据库系统在AIX/unix上的实战详解》讨论31: oracle、sybase 数据库的不同访问...

    <Oracle大型数据库系统在AIX/UNIX上的实战详解> 讨论31:  oracle.sybase 数据库的不同访问方式   文平. 用户来信要求更细节比较一下Oracle和sybas ...

  7. Oracle大型数据库系统在AIX/UNIX上的实战详解

    前言 风,紧, 夜,深沉, 剑,已出鞘, 影,飘然前行! 本书的立意和内容 在服务器领域,IBM p系列服务器与AIX操作系统毫无疑问是UNIX服务器领域中的佼佼者,它代表着UNIX深刻的技术内涵和广 ...

  8. Fedora 中的 Yum 命令详解

    http://pengjiayou.com/blog/yum-fedora-in-order-detailed-explanation 总所周知,Redhat和Fedora的软 件安装命令是rpm,但 ...

  9. python xgboost参数_xgboost中XGBClassifier()参数详解

    常规参数 booster gbtree 树模型做为基分类器(默认) gbliner 线性模型做为基分类器 silent silent=0时,不输出中间过程(默认) silent=1时,输出中间过程 n ...

  10. Java 中的伪共享详解及解决方案

    转载自  Java 中的伪共享详解及解决方案 1. 什么是伪共享 CPU 缓存系统中是以缓存行(cache line)为单位存储的.目前主流的 CPU Cache 的 Cache Line 大小都是 ...

最新文章

  1. Spring 体系常用项目一览
  2. python在什么系统写代码合适-python用什么软件写代码
  3. 离散数学及其应用第6版中文版勘误
  4. unilever workspace creating space
  5. Docker-compose配置Mysql,Redis,MongoDB
  6. “约见”面试官系列之常见面试题之第九十二篇之created和mounted区别(建议收藏)
  7. 同步方法中的锁对象_互斥锁与读写锁:如何使用锁完成Go程同步?
  8. linux中split分割文件打开方式,Linux使用split对文件进行切分和合并的方法
  9. 【算法】剑指 Offer 59 - I. 滑动窗口的最大值
  10. LeetCode 540. 有序数组中的单一元素(Single Element in a Sorted Array) 42
  11. java异常原则_有效处理Java异常三原则
  12. MyBatis 基础知识
  13. java file 其他电脑上_将MultipartFile转换为java.io.File而不复制到本地计算机
  14. LEACH协议网络性能分析
  15. 吴伯凡-认知方法论-如何犯一个“正确”的错误
  16. 放硬币问题的解空间结构
  17. java 实现三角函数边长计算完整代码
  18. SLF4J: Failed toString() invocation on an object of type [com.zhao.guang.xiao.top.po.BlogBean$Hibern
  19. 怎么简单快速一个钟头入侵网站
  20. PVT(Pyramid Vision Transformer: A Versatile Backbone for Dense Prediction without Convolutions)

热门文章

  1. 计算机的应用(3)——防火墙相关知识介绍
  2. springboot整合minio,实现文件上传与下载,且支持链接永久访问
  3. java的cloneable_Java的Cloneable接口和clone方法
  4. laravel android api,Laravel RESTful API与Android应用程序
  5. ETL--oracle --CDC技术
  6. 我的技术投资策略:如何决定学习哪一个新技术的?
  7. 装饰(Decorator)模式(包装模式)
  8. Armory3D游戏引擎运行armory_templates等工程报key Principled BSDF not found错误
  9. Springboot毕设项目婚礼服务预约管理系统5k923(java+VUE+Mybatis+Maven+Mysql)
  10. NOIP2016模拟赛 序 (LIS)