作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在数据库中有一个列“名称”,其值为“约翰,史密斯”。我将字符串变量“name_respository”传递给存储过程,该过程的值为“test,test1,john,test2”或“temp,smith,temp1,temp2”。字符串变量 'name_repository' 值是在运行时生成的,它们可能是 temp 或 test。
现在这就是我想要做的,我正在尝试选择 name 在 name_repository 中的行。问题是我的名字是 'john,smith' 而 name_repository 只有其中之一。我需要拆分 name 变量 john 和 smith,然后与集合进行比较并返回行。
+----------+----------+
| ID | Name |
+----------+----------+
| 1 | john,smith |
| 2 | james,stone |
| 3 | john,smith |
Select * from table where name in name_repository
最佳答案
您可以像这样拆分名称:
SELECT REGEXP_SUBSTR ( name, '[^,]+', 1, LEVEL) data
FROM table
CONNECT BY LEVEL <= LENGTH(name) - LENGTH(REPLACE(txt, ',')) + 1
关于sql - 如何将列中的逗号分隔值与 Oracle 中的字符串集合进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6901408/
我是一名优秀的程序员,十分优秀!