sql - T SQL 从 SELECT 中删除 ASCII 字符
问题描述
我正在使用 SQL Server 2014。
我有下面的 SQL 语句来查找不匹配的记录。但是,它现在可以正常工作,因为 OPENQUERY 中的字段“dsc”实际上在字符串值之前包含一个水平制表符(ASCII 字符 009):
SELECT [E_Code]
FROM [Person] P
WHERE P.E_Code NOT IN (
SELECT dsc
FROM OPENQUERY(svr01, 'select "dsc" from TST.eth')
)
如何从 dsc 字段中删除 ASCII char 009?我试过 LTRIM 无济于事。
谢谢。
解决方案
DECLARE @str VARCHAR(20) = CONCAT('This is a tab--> ', '<--');
SELECT @str, REPLACE(@str, CHAR(9), '');
SELECT [E_Code]
FROM [Person] P
WHERE P.E_Code NOT IN (
SELECT REPLACE(dsc, CHAR(9), '')
FROM OPENQUERY(svr01, 'select "dsc" from TST.eth')
)
推荐阅读
- ibm-cloud-infrastructure - 发票日期的对象过滤器不起作用
- cordova - 如何处理离子中的应用程序退出?
- python - Python递归函数返回一个输入的结果,但没有另一个输入
- dart - 如何在复杂屏幕中空间赋予图像或文本背景
- python - Python:构建 Pandas 数据框的对象
- c# - T4 文本生成部分类
- c++ - 将变量声明为类成员时使用已删除函数的 C++ 错误
- javascript - 多个 ajax 并行调用并在成功后调度 redux 操作导致“未捕获错误:操作必须是普通对象”
- discord.js - 在 discord.js 中更改昵称
- arrays - TArray 的排序问题
对于大数