如何使用 SQL 编写查询来选择在标签 ID 数组中具有标签 ID 的元素?



我正在尝试使用PRESTO数据库创建一个SQL查询,以获取应用了标签的票号。标签位于ticket_tag列中,但票证标签列的每一行都有一个包含股票代码的所有标签 ID 的数组。我想扫描阵列并验证我要查找的标签 ID 是否在其中,以便我只能选择或返回这些票号。有人可以帮忙吗?

all_tickets_tags看起来像这样:

[999170833505476,12403428395,12706673982,104100556289383,202231716456598,430869490433479,605189679499805,928941873813160]

它们是标签 ID。

SELECT ticker_number, ticket_tags
FROM ticket_activity
WHERE all_ticket_tags = 513515886108503

您可以使用包含函数。

contains(all_ticket_tags, 513515886108503)

如果数组只是一个字符串,则可以与 SQL LIKE 语句匹配。

...
WHERE all_ticket_tags LIKE '%tag%'

或者,更准确地说,您可以取消嵌套数组或使用为数组结构定制的函数(如contains(,但这将取决于相关字段的实际格式。

相关内容

  • 没有找到相关文章

最新更新