繁体   English   中英

如何查询其中一列的 substring 上的表过滤?

[英]How do you query a table filtering on a substring of one of the columns?

我有一张我想查询的表。 它有一个名为 comment 的字符串变量,其中包含一个 ID 和其他内容。 (即“123456;varA;varB”)

行号 评论
1 "123456;varA;varB"
2 "987654;varA;varB"

我想根据评论变量中的第一个 substring 进行过滤。

也就是说,我想在评论的第一个 substring 为“123456”的行上过滤表(在示例中将返回第一行)

我该怎么做呢?

我正在考虑下面的代码行,使用“string_split”function,但它不起作用。

SELECT *,
FROM table
WHERE (SELECT value FROM STRING_SPLIT(comment,';',1)="123456")

有没有人有任何想法?

请注意,我在 SAS 中的 SQL 中查询,这是在一个大型数据集上,所以我不想创建一个带有新列的新表,然后再查询。 理想情况下,我想直接查询现有表。

您可以使用 SCAN() function 来解析字符串。

WHERE '123456'=scan(comment,1,';')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM