Я начал анализировать логи с помощью T-SQL. У меня есть одна проблема, с которой я не могу справиться.
Пример сообщения:
LogsID = "1" Value="1" Value="2" Value="3"
Так что у меня нет проблем с разделением, когда я знаю, сколько у меня есть Value, например:
Я использую код из раздела кода для разделения этих данных, как показано ниже:
LogsID Value
---------------
1 1
Код:
DECLARE @String VARCHAR(1024);
SET @String = 'LogsID = "1" Value="1" Value="2" Value="3"'
SELECT
SUBSTRING(@String,
CHARINDEX('Logs_ID="', @String) + 11,
CHARINDEX('Value="', @String) - (CHARINDEX('Logs_ID="', @String) + 13))
Но я не знаю, как обстоят дела с журналами, как показано ниже, когда я не знаю, сколько записей «value» содержится в строке журнала:
LogsID = "1" Value="1" Value="2" Value="3"
Я хочу разбить эту информацию следующим образом:
LogsID Value
------------
1 1
1 2
1 3