gpt4 book ai didi

oracle - 字符串内的子字符串

转载 作者:行者123 更新时间:2023-12-04 22:48:52 25 4
gpt4 key购买 nike

假设这是我的表:

ID  STRING
1 'ABC'
2 'DAE'
3 'BYYYYYY'
4 'H'

我想选择在另一行的 STRING 变量中某处的 STRING 列中至少有一个字符的所有行。

例如, 12有一个 A共同点和 1广告 3有一个 B共同点,但 4与任何其他行没有任何共同的字符。所以我的查询应该只返回前三行。

我不需要知道它与哪一行匹配。

谢谢!

最佳答案

@A.B.Cade:很好的解决方案,但可以在没有任何 distinct 的情况下完成也不是 join .

SELECT * FROM test t1
WHERE EXISTS
(
SELECT * FROM test t2
WHERE t1.id<>t2.id AND
regexp_like(t1.string, '['|| replace(t2.string, '.[]', '\.\[\]')||']')
)

查询不会将字符串与额外的行进行比较,因为一旦为当前行找到 1 个匹配项,它就会停止比较...

See fiddle.

关于oracle - 字符串内的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12922889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com