sql-server - SQL Server - 识别 Varchar 中的十六进制范围
问题描述
我有一个带有 varchar 字段的表。它包含许多引起我们问题的字符,我相信它们介于十六进制范围 0x80 和 0x9F 之间(我相信它们是 cp1252 字符集中的 32 个字符,与 ISO-8859-1 具有不同的映射)。我正在尝试使用以下查询来识别它们,但它不起作用(基本上返回每个 patindex 为 1 的值)。任何帮助将不胜感激!
select top 2000
A.*,
patindex('%[\x80-\x9F]%' COLLATE Latin1_General_BIN, MyField) AS PatIndexPosition
from MyTable A
where patindex('%[\x80-\x9F]%' COLLATE Latin1_General_BIN, MyField) > 0
解决方案
推荐阅读
- amcharts - 如何将时区线和 GMT 偏移标签添加到 am4maps.MapChart
- gatsby - Gatsby 和 Strapi:从 Gatsby 查询的特定数据实例返回 null,尽管 Strapi 中存在
- javascript - React Native:后台作业未在某些 Android 操作系统版本上执行?
- php - 如何防止重力形式验证中的特殊字符?
- firebase - ImageIcon 显示为灰色
- performance - 为什么 WebGL 帧率在全屏时会下降?
- python - TensorFlow 对象检测 API 测试失败
- java - 如何验证字段仅在 AVRO 模式中具有特定值
- weka - 每次点击后,WEKA 都会冻结
- flutter - 在 Flutter 的流构建器中使用 Future 构建器是正确的