oracle - 如何在oracle中找到2个逗号分隔的列之间不匹配的字符串
问题描述
如何在oracle中找到2个逗号分隔的列之间不匹配的字符串
弦 1:苹果、香蕉弦 2:香蕉、橙子
我需要得到结果中的苹果
解决方案
SELECT RESULT, RESULT FROM (
SELECT LISTAGG(DATA,',') WITHIN GROUP (ORDER BY DATA)RESULT FROM (
SELECT REGEXP_SUBSTR ('APPLE,BANANA','[^' || ',' || ']+',1,LEVEL)DATA FROM DUAL
CONNECT BY LEVEL <= LENGTH ('APPLE,BANANA') - LENGTH (REPLACE ('APPLE,BANANA', ',')) + 1
MINUS
SELECT REGEXP_SUBSTR ('BANANA,ORANGE','[^' || ',' || ']+',1,LEVEL)DATA FROM DUAL
CONNECT BY LEVEL <= LENGTH ('BANANA,ORANGE') - LENGTH (REPLACE ('BANANA,ORANGE', ',')) + 1))
RESULT RESULT
------------------------------ ------------------------------
APPLE APPLE
推荐阅读
- jquery - 使用数据表(jquery)更改分页的背景颜色
- python - 使用线性回归在 Numpy/Scypy 中计算斜率和截距时遇到问题
- c++ - xcode“OpenCV 4.x+ 需要启用 C++11 支持”
- c# - C# WindowsForm 组合框显示错误的“显示值”
- c# - mvc路由。如何在 .net core 3.0 中设置默认参数?
- java - 如何在使用自动装配对象的测试中使用实际功能?
- laravel - Laravel - 如何验证唯一规则请求是否区分大小写
- r - 如何修复 dplyr 包中的汇总函数错误?
- flutter - Dart-lang,我如何映射列表
列出 结合元素? - tensorflow - KubeFlow 上的 TFServing 和 KFServing 有什么不同