Oracle 查询重复值函数
Oracle中有多种查询重复值的函数,以下是其中的几种:
- COUNT()函数:用来统计某个字段中出现相同值的次数,可以配合GROUP BY使用。
例如,查询学生表中每个年龄段的人数:
SELECT age, COUNT(*) as num
FROM student
GROUP BY age
HAVING COUNT(*) > 1;
- DISTINCT关键字:用来去除重复值,可以与SELECT一起使用。
例如,查询学生表中所有不同的年龄:
SELECT DISTINCT age
FROM student;
- EXISTS关键字:用来判断是否存在符合条件的记录,可以与子查询一起使用。
例如,查询学生表中是否存在重名的学生:
SELECT *
FROM student s1
WHERE EXISTS (
SELECT 1
FROM student s2
WHERE s1.name = s2.name AND s1.id <> s2.id
);
- ROW_NUMBER()函数:用来给记录编号,可以根据需要对记录进行排序。
例如,查询学生表中按照姓名和年龄排序,并给记录编号:
SELECT name, age, ROW_NUMBER() OVER (ORDER BY name, age) as row_num
FROM student;
以上是一些常用的查询重复值的函数,可以根据实际情况选择使用。
原文地址: https://www.cveoy.top/t/topic/ncW 著作权归作者所有。请勿转载和采集!