gpt4 book ai didi

sql - 创建 View 和 For Json 子句

转载 作者:行者123 更新时间:2023-12-01 12:28:00 25 4
gpt4 key购买 nike

SQL Server 2016 ,我可以运行这个简单的查询:

SELECT  colA, colB, json_query(infoJson) AS Expr1
FROM dbo.Table_1
FOR json auto

我什至可以将它包装在一个存储过程中。它运行良好。

但是当我试图根据该语句创建 View 时,有些奇怪(至少对我而言):
CREATE VIEW [dbo].[View_1]
AS
SELECT colA, colB, json_query(infoJson) AS Expr1
FROM dbo.Table_1
FOR json auto

这是我得到的错误:

Msg 4511, Level 16, State 1, Procedure View_1, Line 5 [Batch Start Line 9] Create View or Function failed because no column name was specified for column 1.



但是我一评论 --for json auto , VIEW按预期创建。

为什么?我真的很想拥有 FOR JSON在我的 sql View 中。

最佳答案

FOR XML | JSON AUTO返回单列(字符 LOB)。因此,您需要修改 SELECT 语句以在 View 中返回单个列,例如:

CREATE VIEW [dbo].[View_1]
AS
SELECT (
SELECT colA, colB, json_query(infoJson) AS Expr1
FROM dbo.Table_1
FOR json auto
) as X

关于sql - 创建 View 和 For Json 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37659268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com