首页 > 解决方案 > JSON 创建、插入和选择查询

问题描述

我正在尝试创建一个键/值表,该表可以获取超过 80000 的讲师姓名和薪水。我无法在此处创建 SELECT 语句。在这里使用 Json。

CREATE TABLE instructortest (
 ID  INT PRIMARY KEY,
 info VARCHAR(max) NOT NULL
);

ALTER TABLE instructortest
ADD CONSTRAINT "valid JSON"
CHECK (ISJSON (info) = 1);

INSERT INTO instructortest 
VALUES (78699,'{"name":"Pingr","Department":"Statistics","salary":"59303.62"}' )

select JSON_VALUE(info, '$.name') from instructortest 
where ('$.salary') = 59303.62

标签: jsonsql-servernosqlkey-value-store

解决方案


您只需要在 where 子句中再次使用 JSON_VALUE :

select JSON_VALUE(info, '$.name') from instructortest 
where cast(JSON_VALUE(info, '$.salary') as decimal(18,2)) > 80000

推荐阅读