Сравнение двух значений из двух разных баз данных не работает правильно - PullRequest
0 голосов
/ 25 июня 2019

У меня есть две базы данных, которые являются репликацией из домашнего офиса в местоположение и местоположение в домашний офис.(в процессе строительства дома)

Мне было поручено сравнить данные HO и Loc.У меня есть несколько полей varchar, которые при просмотре данных в запросе выглядят совпадающими. Однако, когда я делаю сравнение, HO.Desc = Loc.Desc я получаю false.Я обнаружил, что есть возвраты и иногда скрытые пробелы в том или ином значении.Я сделал Rtrim (ltrim (loc.desc) = rtrim (ltrim (ho.desc)) все еще те же результаты. Может кто-нибудь дать мне несколько советов о том, как сделать сравнение?

Я пробовал ltrim (rtrim (значение))

Я надеюсь, что смогу пометить два значения как одинаковые.

1 Ответ

0 голосов
/ 25 июня 2019

У меня есть удобный скрипт, который я использую для идентификации невидимых символов; он дает вам каждый символ в строке, но в виде отдельной строки на символ.

DECLARE @nstring NVARCHAR(1000)

select top 1 @nstring = [Desc]
FROM myTable
WHERE [Desc] LIKE '%Criteria%'

print @nstring

DECLARE @position INT
 SET @position = 1

DECLARE @CharList TABLE (
 Position INT,
 UnicodeChar NVARCHAR(1),
 UnicodeValue INT
 )

WHILE @position <= DATALENGTH(@nstring)
 BEGIN
 INSERT @CharList
 SELECT @position as Position
 ,CONVERT(nchar(1),SUBSTRING(@nstring, @position, 1)) as UnicodeChar
 ,UNICODE(SUBSTRING(@nstring, @position, 1)) as UnicodeValue
 SET @position = @position + 1
 END

SELECT * FROM @CharList
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...