1

我使用 Microsoft SQL 服务器和 Hangfire。在 HangFire.Job 表中,我有一个存储外键的 Arguments 列。对我来说,我的参数栏看起来像这样:

["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 查询)来获取带有 PARSENAME 和 REPLACE 的外键,但没有成功。请帮忙。

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

1 回答 1

0

你可以试试

SELECT SUBSTRING(
          SUBSTRING(Arguments, CHARINDEX('"', Arguments)+1, LEN(Arguments)),
          0, 
          CHARINDEX(
              '"', 
              SUBSTRING(Arguments, CHARINDEX('"', Arguments)+1, LEN(Arguments))
          )
        )
FROM Hangfire.Job
于 2021-08-05T07:46:34.913 回答