sql - 如何在sql中的ARRAY中获取最频繁的值?
问题描述
我是 SQL 的新手。
我已经建立了一个数组,我一直在其中存储我一直在循环中收集的值并将它们除以其他值。
该数组具有正确的值。
现在我需要得到这个数组中重复次数最多的值。
这可以用 SQL 实现吗?我的环境是 Oracle 11。
这是数组:
type array_type is varray(100) of NUMBER(10);
loop_results array_type := array_type();
价值:
1: 906450
2: 906450
3: 306449
4: 906446
5: 306450
6: 906447
7: 306449
8: 306448
9: 306448
10: 306450
谢谢你的时间。
解决方案
首先,数组是 pl/sql 的一部分。同样尝试以下。下面使用临时表会有些容易。
Create table sample(value1
number(10));
Declare
type array_type is varray(100) of
NUMBER(10);
loop_results array_type := array_type();
Max varchar2(20);
begin
for i in 1..loop_results.length
loop
Insert into sample values
(loop_results(i)) ;
End loop
Select value1 into max from(Select
Value1,
count(*)
from sample order by count(*) desc
Group by value1) where rownum=1;
dbms_output.put_line(max) ;
End
推荐阅读
- java - 为什么单击拍摄按钮时相机会冻结大约 3-4 秒?(Camera2 API)
- sql-server - SQL Server 过程中输出中的别名
- wso2 - 为什么存在中介策略时 WSO2 API Manger 无法执行 PUT 请求?
- javascript - 如何使用 JQuery 根据屏幕大小实时更新 CSS?
- google-chrome - TD 一个具有相对位置的 TH,突破溢出:Chrome 中的滚动父级
- ruby - 为什么一个简单的计算会在 ruby 中返回不同的结果
- android - 即使应用程序是从 Play 商店下载并安装的,Google Admob 始终会在模拟器上显示测试添加
- discord.py - 如何从已发送的机器人中删除直接消息?
- javascript - 当我更改 DOM 元素的 outerHTML 时会发生什么?
- java - 控制流说明