sql - 通配符运算符用于排除字符前后的所有数字
问题描述
我想找到像 VIA BOEZIO 6 这样的所有地址。我用过:
select address
from tab
where address like '%VIA%BOEZIO%6%'
但不幸的是,这是结果:
有没有办法排除“6”前后的所有数字字符。你可以帮帮我吗?
谢谢马蒂亚
编辑:我已经修复了:
其中地址类似于 '%VIA%BOEZIO%[^0-9]6[^0-9]%'
解决方案
这将保证在“6”之前或之后没有额外的数字。
它还允许您在“BOEZIO”和“6”之间任意组合非字母数字字符。
select address
from tab
where regexp_like(address, 'VIA BOEZIO(\W|_)+6(\D|$)')
推荐阅读
- python - Django rest 框架模型在管理站点中不可见
- python - 如何使用 GeoPandas 控制 Choropleth 地图的起始 bin 范围
- ajax - 我无法在我的 showdata div 中获取数据
- sap - 有没有办法在交叉表的每列末尾选择一系列单元格来执行计算
- objective-c - 读取 JSON 数据的 NSDictionary
- postgresql - Kafka:使用不同列中的值从主题创建流
- bash - 如何使用 awk 或 sed 递归查找/替换长字符串?
- python-3.x - 跨多个字典排序键
- winapi - VC++ 中的内联汇编代码 :: WaitForSingleObject 系统调用需要帮助
- vb.net - 虽然有 Imports Newtonsoft.Json 得到错误“未定义类型'JsonSerializerSettings'。”