sql - 检查整数是否介于二维数组列的任何整数对之间
问题描述
鉴于:
要匹配的元素 int:4200
二维数组列(int[][]):{{1000,3000},{4000,4500},{8000,9000}}
期望的输出:记录在多维数组中4200
找到between/range in ANY
的位置。integer pair
样本理想输出:
4200 = true
900 = false
4501 = false
8000 = true
到目前为止,我所拥有的是:
SELECT schedule."hours" FROM public."Schedule" as schedule
WHERE 4200 between schedule."hours"[1][1] and schedule."hours"[1][2];
我面临的挑战是我需要在所有数组中检查它。因为我所做的只是在多维数组的第一个整数对上匹配它。
编辑答案:如果其他人和我有同样的担忧。
我将此链接发送给我的一位同事,他很快就理解了我的担忧,并指出使用generate_subscripts而不是在我的 where 子句中手动列出索引(在 schedule."hours"[1][1] 和 schedule."hours" 之间) [1][2])
generate_subscripts正是我列出索引并在 where 子句中使用它所需要的。
解决方案
推荐阅读
- sockets - 使用 Scapy 解析 TCP DNS 请求
- haskell - 使用列表理解的 Haskell 中的完整甲板
- c++ - 如何将字符插入字符串向量
- angular - 是否有带有 Express RESTful API 的 GetOrgChart Angular 组件
- java - 与 Java 相比,Kotlin 中并发 shell 命令的性能较差
- javascript - JavaScript 循环和数组
- python - 检查字典键Python 2.7之间的部分匹配
- php - json_decode 的结果有效但 PHP 中的个别字段为空?
- go - 在 Go 中对结构切片进行排序的灵活而优雅的方法
- powershell-2.0 - 什么是 Powershell V2 中的 split cmdlet 的等价物?