当前位置:首页 » 编程语言 » oraclesqldistinct
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

oraclesqldistinct

发布时间: 2022-05-01 03:41:37

A. 问一下oracle数据库 select count(*),distinct id from table_name语句

--假设表名为sales
(销售)
--,含有字段proct
(产品)
;
select
proct
,
count(*)
from
sales
group
by
proct
;
--如果还有流水号id,可以:
select
proct
,
count(*)
--不去重
,
count(distinct
id)
--去重
from
sales
group
by
proct
;

B. Oracle数据库下 distinct 与row_number() over的用法

哪个快要以当时的执行计划为准

C. 数据库oracle中怎么用distinct取消重复行

首先,对你的需求有点模糊,取消c_id的重复行,然后还显示c_id,s_id。上面两个sql不知道是否满足你的需求,就比如
select distinct c_id,s_id from xskc ,这条语句消除的是c_id和s_id同时一样的记录,所以单就c_id,还是会有重复的情况。
SQL> desc p
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER
NAME VARCHAR2(10)

SQL> select * from p;

ID NAME
---------- ----------
1 AAA
2 AAA
1 BBB
3 BBB
SQL> select distinct id,name from p;

ID NAME
---------- ----------
1 AAA
1 BBB
2 AAA
3 BBB

SQL> select distinct id from p;

ID
----------
1
2
3

所以不管怎么样,如果你要显示c_id和s_id的话,c_id基本都可能重复,除非你还有其他的条件限制

D. Oracle11g distinct是否不自动排序了

Oracle11g权威指南
http://ke..com/view/1906335.htm

参考资料:http://ke..com/view/1906335.htm

E. mysql可以用distinct,那么oracle可以用吗 两者的区别

可以,distinct是sql的语法,不是dbms里特有的
用法相同

F. Oracle―distinct的用法

以三个字段举例

selectid,max(字段1),max(字段2),max(字段3)fromAgroupbyid

70多个字段也只能这样类似的写下去,当然max可以改成min

G. oracle 中distinct 并对令一列求和

SQL> create table temp(
2 code varchar2(3),
3 num number(3)
4 );

表已创建。

SQL> insert into temp values('A',1);

已创建 1 行。

SQL> insert into temp values('B',3);

已创建 1 行。

SQL> insert into temp values('B',7);

已创建 1 行。

SQL> insert into temp values('C',2);

已创建 1 行。

SQL> insert into temp values('C',2);

已创建 1 行。

SQL> insert into temp values('D',5);

已创建 1 行。

SQL> insert into temp values('D',8);

已创建 1 行。

SQL> select code,sum(num) from temp group by code;

COD SUM(NUM)
--- ----------
A 1
B 10
C 4
D 13

不知道你要的是不是这个意思,如果一样就自己套吧

H. sql server里的distinct 和oracle有什么区别

distinct去除重复数据。貌似没啥差别。过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数

I. oracle sql 去重复记录不用distinct如何实现

1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断

select*frompeople

wherepeopleIdin((peopleId)>1)

2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录

deletefrompeople

wherepeopleIdin((peopleId)>1)

androwidnotin(selectmin(rowid)(peopleId)>1)

J. oracle中number distinct什么字段

那就用distinct函数,只取出重复的唯一记录就可以了。
sql:select distinct(* ) from tablename ;