我需要创建一个oracle视图,该视图将根据表的长度将数据细分为0.5段。
<>道路英里/th>
1.4 50。0 报3 1.5 50 。
您可以使用hierarchical query
这样
CREATE OR REPLACE VIEW v_road_partition AS
SELECT Road_ID, .5*(level-1) AS Beg_Mp, LEAST(.5*level,Road_Miles) AS End_Mp
FROM t
CONNECT BY level <= CEIL(Road_Miles/.5)
AND PRIOR sys_guid() IS NOT NULL
AND PRIOR Road_ID = Road_ID
您可以使用递归子查询(它没有为每一行生成GUID的开销):
CREATE VIEW view_name (road_id, beg_mp, end_mp) AS
WITH road_splits (road_id, beg_mp, end_mp) AS (
SELECT road_id, FLOOR(road_miles * 2)/2, road_miles
FROM table_name
UNION ALL
SELECT road_id, beg_mp - 0.5, beg_mp
FROM road_splits
WHERE beg_mp > 0
)
SEARCH DEPTH FIRST BY road_id SET order_id
SELECT road_id, beg_mp, end_mp
FROM road_splits
对于样本数据:
CREATE TABLE table_name (Road_ID, Road_Miles) AS
SELECT 1, 1.4 FROM DUAL UNION ALL
SELECT 2, 0.49 FROM DUAL UNION ALL
SELECT 3, 2.01 FROM DUAL;
则视图将输出:
END_MP这将需要创建/生成一些数据。我们可以使用level.
一种方法如下-
with filler_cte (miles) as
(
select 0.5*level miles from dual connect by level<10
), data_cte(id,b_mp) as
(select 1,1.4 from dual union all
select 2,1.9 from dual)
select id as "Road ID",
miles-0.5 as "Beg MP",
case when ceil(miles) = (select ceil(b_mp)
from data_cte d where d.id = a.id) then b_mp
else miles
end as "End MP"
from data_cte a, filler_cte b
where ceil(a.b_mp) > b.miles
order by id, "Beg MP";
Road ID Beg MP End MP
---------- ---------- ----------
1 0 .5
1 .5 1
1 1 1.4
2 0 .5
2 .5 1
2 1 1.9
相关内容
- 如何将StreamReader responseStream分解成段来构建数组/对象
- 有人可以分解这段代码中发生的事情吗?
- 无法分解logstash消息字段
- Javascript如何将一段文本分解为单个单词?并为每个单词添加span标签?
- 如何在Django表单中分解2个datetime字段为1个日期和2个时间?
- 如何将未知字段类型的数据分解为JSON
- Oracle视图,将值分解为0.5段
- 使用Spring MVC按字段将传入的JSON分解为对象
- Subabase:无法读取Signup params:json:无法将对象分解为字符串类型的Go结构字段SignupPa
- 只将一些字段分解为对象A,将其余字段分解为B
- 在Django Rest Framework中将字段分解为自己的序列化程序
- 如何在 Spark 中将两个数组字段分解为多列?
- SQL Server:创建新表以将描述字段分解为新的有组织的表
- 如何将 Django 模型字段分解到自己的模型中,保留数据?
- 如何在表中隐藏分组字段,该字段分解小计,但不应显示在报告中
- 如何在FastCube(在DelphiXE2下)中使用编码将日期字段分解为年、季、月、日
- 我应该把一个日期字段分解成月,日和年在核心数据,很容易分组和获取日期按月和年
- 将字段分解为枚举-可能
- 无法弄清楚如何将字段分解到单个行上
- 我试图在剑道UI中为特定字段分解饼图的特定部分
最新更新
- 我如何轻松地重新安装所有卸载的VS Code扩展,他们的文件仍然徘徊在我的~/.vscode /扩展文件夹吗?<
- 使用MS Graph API在应用注册中添加更多应用角色
- PAC文件未正确筛选网站
- 返回一个字典,每个字符都有多个实例
- AWS S3 -仅Zip文件对象,而不是路径
- 公共api如何处理CORS起源和jwt ?
- 如何摆脱实际上"duplicates"几乎等同的调用行,实际上只切换了部分列数据?
- 如何在换行时中断文本?
- 使用流JAVA 8将map转换为特定的dto对象
- React Typescript:重构代码后无法过滤数组
- pyalgotrade退出订单事件(onExitOk)的问题
- 如何从Lucene文档中打印所有术语?
- 使用jQuery通过span类获取检查元素
- 如果数据在列表中,如何过滤请求中的数据?
- 是否可以使用javascript或python访问whatsapp消息数据库历史记录?
- 为什么在版本 5 中找不到松树脚本的"ta.sqrt"?
- 检查String是否包含List中的任何项
- Firebase Checkout Timer
- Pythonnet中的c#扩展和Linq
- 你好,这是大学学习编程的第一天
- 为什么单元测试一个图像字段使用SimpleUploadedFile创建多个图像?
- 从文件中删除空白而不是从目录中删除空白会抛出错误
- 如何调用异步函数之前的组件呈现在reactjs?
- scikit-learn版本不匹配__version__ '和' pip show scikit-learn '.<
- 雪花云数据平台哈希MD5或SHA256
- Traefik filter portainer 作为 docker 群中的"disabled container"
- Pandas数据框架,如何根据其他行的值替换部分行
- 如何安装Tensorflow和CUDA驱动程序?
- 如何创建带有域名和可导出过程列表的COBOL模块
- Pixi js对一个元素进行两次旋转(如何添加类似包装器的东西)
热门标签:
javascript python java c# php android html jquery c++ css ios sql mysql arrays asp.net json python-3.x ruby-on-rails .net sql-server django objective-c excel regex ruby linux ajax iphone xml vba spring asp.net-mvc database wordpress string postgresql wpf windows xcode bash git oracle list vb.net multithreading eclipse algorithm macos powershell visual-studio image forms numpy scala function api selenium