下面的代码打开了一条json消息,并插入了与 post_metric_score
table。一般来说,它可以正常工作,除非值如下:
"disgust": 5.6780936574796215e-05.
我得到的错误是
将数据类型nvarchar转换为十进制时出错
INSERT INTO [Database].[post_metric_score] ([post_id], [metric_id], [score])
SELECT @post_id, 4, [score]
FROM OPENJSON(@postJson, '$.sentiment_results.emotions')
WITH ([score] DECIMAL(12, 8) '$.disgust')
我试图在select语句中添加convert语句,但它不起作用。
SELECT @post_id, 6, CONVERT(DECIMAL(12,8), [score]) AS [score]
你知道我做错了什么吗?
1条答案
按热度按时间oxcyiej71#
尝试以字符串形式检索值并使用
try_convert()
:或者直接使用浮点数: