#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