sql - 仅返回其中没有数字字符的值 SQL
问题描述
我试图只从该值中没有数字字符的列返回值。例子:
yyyy INC 5.875% DUE 3/15/2014
xxxx INC 6% DUE 4/15/2012
x INC 6.625% DUE 9/15/2016
xx INC 8.2% DUE 10/17/2003
xy CORP REGISTERED
xy INC
我只想返回最后两条记录,因为其中没有数字字符。
我在玩
not like '%[^0-9.]%'
我知道如何返回不以 (+) 开头的值。我只是对如何在整个价值上做到这一点感到困惑。
解决方案
在 Oracle 中,您将使用regexp_like()
. 要说字符串中没有数字:
where not regexp_like(col, '[0-9]')
或者,如果您更喜欢更积极的东西,您可以说所有字符都不是数字:
where regexp_like(col, '^[^0-9]*$')
推荐阅读
- javascript - 我想使用 beautiful-dnd 交换 2x2 矩阵元素,但是当我将它们映射时,它会生成 2 个列
- node.js - 在没有库的情况下使用 nodeJS 解析 CSV 字符串
- html - 如何修复我的 div 位移对齐?
- javascript - 无法读取 null 的属性“insertAdjacentHTML”
- jquery - Laravel - 在 AJAX 响应中返回 2 个视图
- pandas - 如果 pandas 包含我要替换的字符串的一部分,我该如何更改它的列值?
- python - 如何模拟一个类并为每组构造函数参数提供一个唯一的对象?
- javascript - 在鼠标移开之前使元素不与其他元素一起移动
- nlp - 从单词序列中提取句子并添加标点符号
- python - 在 DatetimeIndex 上使用 .loc 检索特定日期的值 (KeyError