Получаю аргументы от Hangfire.Таблица заданий

#sql #sql-server #hangfire #hangfire-sql

Вопрос:

Я работаю с Microsoft SQL server и Hangfire. В висячем огне.Таблица заданий У меня есть столбец Аргументов, в котором хранятся внешние ключи. Для меня моя колонка аргументов выглядит так:

 ["20073"]
["20075","2",""2021-07-29T11:00:00.139""]
["20076","2",""2021-07-29T11:15:00.484""]
["20077","3",""2021-07-29T11:15:00.418""]
["20078","4",""2021-07-29T11:30:00.104""]
["20079"]
 

Как я могу получить внешние ключи без скобок, даты, времени и т.д. ? Внешними ключами являются: 20073, 20075, 20076, 20077, 20078, 20079. Я попытался написать SQL-запрос(это мой sql-запрос), чтобы получить внешние ключи с именем синтаксического анализа и ЗАМЕНИТЬ, но это не сработало. Пожалуйста, помогите.

 SELECT PARSENAME(REPLACE(Arguments , '' , '.'),1)
FROM Hangfire.Job
 

Ответ №1:

Вы можете попробовать

 SELECT SUBSTRING(
          SUBSTRING(Arguments, CHARINDEX('"', Arguments) 1, LEN(Arguments)),
          0, 
          CHARINDEX(
              '"', 
              SUBSTRING(Arguments, CHARINDEX('"', Arguments) 1, LEN(Arguments))
          )
        )
FROM Hangfire.Job