从Oracle表中筛选字母的技术实现需求
Oracle筛选两列中所有字母的解决方案
需求说明
从包含表1、表2两列的Oracle表中,筛选出所有单个字母(A-Z、a-z)的值,输出为单列结果。
解决方案SQL
SELECT col_val AS Output FROM ( -- 提取表1列中的字母 SELECT "表1" AS col_val FROM your_table_name WHERE REGEXP_LIKE("表1", '^[A-Za-z]$') UNION ALL -- 提取表2列中的字母 SELECT "表2" AS col_val FROM your_table_name WHERE REGEXP_LIKE("表2", '^[A-Za-z]$') ) ORDER BY col_val;
关键说明
REGEXP_LIKE函数:通过正则表达式^[A-Za-z]$匹配仅含单个字母的字段值,^和$确保字段值没有其他多余字符。UNION ALL:合并两列的筛选结果,保留重复值;若需去重,可替换为UNION。- 替换
your_table_name为你实际使用的表名称;如果列名不是中文,可去掉双引号。
内容的提问来源于stack exchange,提问作者Vikas Ubale
相关产品推荐
相关产品推荐

