В настоящее время я работаю над системой ведения журнала на сервере sql 2014 и должен найти способ присвоить аналогичные строки в группы. Каждая строка содержит префикс, идентификатор или указатель, а затем суффикс. Я хотел бы найти способ найти, если в моей таблице уже есть строки с тем же предварительным и суффиксом.Поиск похожих строк в tsql
Типичная строка может выглядеть следующим образом:
'ApsisQueue.Synchronize @ApiKey = AA24FA75-CB78-451E-A11F-39115ABF8AA1, @CallbackId = 1'
Или
«ApsisQueue .Synchronize @ApiKey = AA24FA75-CB78-451E-A11F-39115ABF8AA1, LogMessage = NULL»
Или
'ApsisQueue.Synchronize @ApiKey = BC2CFC45-CB78-411E-A66F-3CC654AB125, LogMessage = NULL'
Или
'File ID не существует'
Или
'File ID не существует'
Я хотел бы сгруппировать сообщения в зависимости от того, что появляется до и после значений Id/Guid, поэтому вышеприведенные сообщения будут сгруппированы в 3 группы.
Я нашел использование Levenshtein, чтобы найти похожие строки, но, похоже, немного перебор, так как я знаю, что все различия будут следовать друг за другом (это также приводит к проблемам с производительностью из-за количества строк, которые необходимо сравнить). Проблема в том, что я не знаю, где в строке начинается/заканчивается Guid/Id.
Можете ли вы добавить некоторые примеры данных и объяснить вместе с ним – TheGameiswar
«Проблема заключается в том, что я не знаю, где в струны Guid/Id начинается или заканчивается.» Мы тоже. Мы даже не знаем, как выглядит строка. –
Добавлено несколько примеров типичных строк, которые появятся в журнале – Kull