从一列中获取 Json 提取并与另一列进行比较

问题描述 投票:0回答:1

我有以下数据,我希望与 transactionTimeStamp > CreatedDate_TimeStamp 进行比较,其中 Config_MSG是json格式的列之一

身份证 配置_MSG 创建日期_时间戳
1234 {"memberId":"1", "messgae":{"transactionTimeStamp":"2024-08-20 14:17:29"}} 2024-08-19 14:17:29
12345 {"memberId":"2", "messgae":{"transactionTimeStamp":"2024-08-22 14:17:29"}} 2024-08-18 14:17:29
12346 {"memberId":"3", "messgae":{"transactionTimeStamp":"2024-08-18 14:17:29"}} 2024-08-18 14:17:29

我有以下数据,我希望与 transactionTimeStamp > CreatedDate_TimeStamp 进行比较,其中 Config_MSG是json格式的列之一

我正在尝试使用 JSON_EXTRACT,它可能会出现错误,可能是语法或 ms-sql 不支持此

sql mysql sql-server mssql-jdbc
1个回答
0
投票

当您使用sql server时,根据您的要求,您应该使用

JSON_VALUE

SELECT *
FROM my_table
WHERE CONVERT(DATETIME, JSON_VALUE(config_msg, '$.transactionTimeStamp')) > createddate_timestamp;

有关完整的 sql server 执行,请参阅此:dbfiddle

© www.soinside.com 2019 - 2024. All rights reserved.