我有 json 数据,其中包含 productDetails 列表。我需要将每个细节与 productId 结合起来。
我正在使用存储过程。这是我的代码:
DECLARE @products AS TABLE(productName NVARCHAR(255),
productId INT NOT NULL);
INSERT INTO @products
EXEC [saveproducts] @product;
Run Code Online (Sandbox Code Playgroud)
从上面的查询中,我将获得产品列表作为表格。现在我需要将 json 中的详细信息与相应的产品连接起来
INSERT INTO @detail
SELECT
[detaiId], [productId]
FROM
OPENJSON(@detailJSON)
WITH(detailId UNIQUEIDENTIFIER 'strict $.detaiId',
productId INT ??????);
Run Code Online (Sandbox Code Playgroud)
如何productId通过比较productNamein@detailJSON和 from 表来获得@products?
只需要一个简单的内连接
INSERT INTO @detail
SELECT
J.[detaiId], P.[productId]
FROM
@products P
INNER JOIN
OPENJSON(@detailJSON)
WITH(detailId UNIQUEIDENTIFIER 'strict $.detaiId',
productName NVARCHAR(255) 'strict $.productName'
) J
ON J.productName = P.productName
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15440 次 |
| 最近记录: |