sql扫描数组

author author     2023-01-13     459

关键词:


扫描数组
如需检查数组是否包含特定值,请结合使用 IN 运算符和 UNNEST。如需检查数组是否包含与某条件匹配的值,请结合使用 EXISTS 函数和 UNNEST。

扫描特定值
如需扫描数组中的特定值,请将 IN 运算符与 UNNEST 结合使用。

示例

以下示例在数组中包含数字 2 时返回 true。

SELECT 2 IN UNNEST([0, 1, 1, 2, 3, 5]) AS contains_value;

+----------------+
| contains_value |
+----------------+
| true |
+----------------+

对于一个表,要返回数组列中包含特定值的行,请使用 WHERE 子句过滤 IN UNNEST 的结果。

示例

以下示例返回数组列中包含值 2 的行的 id 值。

WITH sequences AS
(SELECT 1 AS id, [0, 1, 1, 2, 3, 5] AS some_numbers
UNION ALL SELECT 2 AS id, [2, 4, 8, 16, 32] AS some_numbers
UNION ALL SELECT 3 AS id, [5, 10] AS some_numbers)
SELECT id AS matching_rows
FROM sequences
WHERE 2 IN UNNEST(sequences.some_numbers)
ORDER BY matching_rows;

+---------------+
| matching_rows |
+---------------+
| 1 |
| 2 |
+---------------+

扫描满足条件的值
如需扫描数组以查找与条件相匹配的值,请使用 UNNEST 返回包含数组中元素的表,使用 WHERE 过滤子查询中的结果表,然后使用 EXISTS 检查过滤后的表是否包含任何行。

示例

以下示例返回包含大于 5 的值的数组列中行的 id 值。

WITH sequences AS
(SELECT 1 AS id, [0, 1, 1, 2, 3, 5] AS some_numbers
UNION ALL SELECT 2 AS id, [2, 4, 8, 16, 32] AS some_numbers
UNION ALL SELECT 3 AS id, [5, 10] AS some_numbers)
SELECT id AS matching_rows FROM sequences
WHERE EXISTS (SELECT *
FROM UNNEST(some_numbers) AS x
WHERE x > 5);

+---------------+
| matching_rows |
+---------------+
| 2 |
| 3 |
+---------------+


SQL中的表扫描和索引扫描

】SQL中的表扫描和索引扫描【英文标题】:TableScanandIndexScaninSQL【发布时间】:2012-01-3122:33:43【问题描述】:SQL中的Tablescan和Indexscan有什么区别,具体用在什么地方?【问题讨论】:What\'sthedifferencebetweenaTableScanandaClusteredIndexScan?... 查看详情

在C中扫描整数后扫描char数组

】在C中扫描整数后扫描char数组【英文标题】:ScanningachararrayafterscanninganintegerinC【发布时间】:2016-06-0911:22:45【问题描述】:我是编程新手。当我在扫描一个整数后输入一个char数组时,我感到很困惑。它无法正常工作。代码如... 查看详情

专题偏序,扫描线

【关键字】偏序,数点,树状数组,线段树,扫描线。因为涉及多种算法,所以整合到一起。【扫描线】二维数点,偏序★数点问题★关于偏序问题的一些总结一维偏序:排序二分  树状数组二维偏序:排序扫描线+树状数组(... 查看详情

SiteLock SQL 注入和 XSS 扫描失败

】SiteLockSQL注入和XSS扫描失败【英文标题】:SiteLockSQLinjection&XSSscanfailed【发布时间】:2017-10-1122:10:46【问题描述】:您好,我购买了SiteLock,他们说我的网站SQL注入和XSS扫描失败SQL注入:网址:https://www.sitename.com/product.php?id=1... 查看详情

Java Veracode 扫描 - SQL 注入的误报

】JavaVeracode扫描-SQL注入的误报【英文标题】:JavaVeracodeScan-FalsePositiveonSQLInjection【发布时间】:2019-05-0113:08:43【问题描述】:我们在Java代码中得到“CWE-89:SQL命令中使用的特殊元素的不当中和(\'SQL注入\')”:privatestaticvoiddoSom... 查看详情

优化 SQL 查询以避免全表扫描

】优化SQL查询以避免全表扫描【英文标题】:OptimizingaSQLquerytoavoidfulltablescan【发布时间】:2011-05-1902:00:55【问题描述】:考虑以下查询:SELECT*FROMTransactionsWHEREday(Stamp-interval3hour)=1;Transactions表中的Stamp列是一个TIMESTAMP,上面有一个... 查看详情

sql按名称扫描数据库中的所有sql表(代码片段)

查看详情

ArangoDB AQL 深度数组扫描

】ArangoDBAQL深度数组扫描【英文标题】:ArangoDBAQLdeeparrayscan【发布时间】:2021-11-2610:18:08【问题描述】:我有一组客户及其访问过的地方,按如下方式组织:"customer_id":151,"first_name":"Nakia","last_name":"Boyle","visited_places":["country":"Liberi... 查看详情

通过后续索引扫描二维数组并不总是更快吗?

】通过后续索引扫描二维数组并不总是更快吗?【英文标题】:Isscanningatwo-dimensionalarraybysubsequentindicesnotalwaysfaster?【发布时间】:2019-05-1000:27:45【问题描述】:假设x是第一个索引并且y是第二个(由于缓存未命中较少),垂直扫... 查看详情

使用python从频率数组中进行音调扫描

】使用python从频率数组中进行音调扫描【英文标题】:Tonesweepfromarrayoffrequencieswithpython【发布时间】:2021-07-2114:59:08【问题描述】:我有一个带有频率值的数组,并且想要生成带有在给定值之间扫描的音调的wav文件。说freqs=[100,10... 查看详情

从 sql 表值中减去扫描仪值

】从sql表值中减去扫描仪值【英文标题】:Subtractscannervaluefromsqltablevalue【发布时间】:2020-06-2403:13:32【问题描述】:我正在尝试从表值中减去扫描仪输入。这是我的表格的屏幕截图:我的代码如下所示:Stringurl="jdbc:mysql://localhos... 查看详情

sql注入漏洞扫描工具都有哪些

...个WebCruiserWebVulnerabilityScanner是一个功能不凡的Web应用漏洞扫描器,能够对整个网站进行漏洞扫描,并能够对发现的漏洞(SQL注入,跨站脚本)进行验证;它也可以单独进行漏洞验证。网站爬虫(目录及文件);漏洞扫描(SQL注入... 查看详情

扫描字符串并将部分插入数组[重复]

】扫描字符串并将部分插入数组[重复]【英文标题】:Sweepastringandinsertportionsintoanarray[duplicate]【发布时间】:2014-03-1620:53:01【问题描述】:我有这个字符串,在变量\'strings\'中:NSMutableArray*array_strings;NSString*strings=@"one<-+->two<... 查看详情

java示例代码_扫描一个字符串数组,并将其处理为不同的多维数组,无需重复

java示例代码_扫描一个字符串数组,并将其处理为不同的多维数组,无需重复 查看详情

Spark 是不是支持结构数组的列扫描修剪

】Spark是不是支持结构数组的列扫描修剪【英文标题】:DoesSparksupportcolumnscanpruningforarrayofstructsSpark是否支持结构数组的列扫描修剪【发布时间】:2020-07-2014:53:24【问题描述】:我在以下架构中有一个名为“家庭”的数据框:root|-... 查看详情

sql扫描仪sda上的手动事务(代码片段)

查看详情

如何根据用户输入(扫描仪)获取 SQL 准备语句

】如何根据用户输入(扫描仪)获取SQL准备语句【英文标题】:HowtogetSQLpreparedstatementbasedonuserinput(scanner)【发布时间】:2019-05-1009:30:12【问题描述】:我在创建准备好的语句时遇到困难,该语句选择并打印出满足条件的行:SELECTR... 查看详情

每5秒用java扫描一个表sql

】每5秒用java扫描一个表sql【英文标题】:Scanningatablesqlwithjavaevery5second【发布时间】:2017-10-0507:19:43【问题描述】:谁能帮帮我,如何在java中创建一个函数,每5秒扫描一次,以了解mysql表中是否存在输入的新数据。【问题讨论... 查看详情