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 ;