Compartir por


Conversión por parte de FOR JSON de tipos de datos de SQL Server en tipos de datos JSON

Aplica a: SQL Server 2016 (13.x) y versiones posteriores y Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics (solo para SQL pool sin servidor)punto final de SQL Analytics en Microsoft FabricAlmacén en Microsoft FabricBase de datos SQL en Microsoft Fabric

La cláusula FOR JSON usa las siguientes reglas para convertir tipos de datos SQL Server en tipos JSON en la salida JSON.

Category Tipos de datos de SQL Server Tipo de datos JSON
Tipos de carácter & cadena char, nchar, varchar, nvarchar string
Tipos numéricos int, bigint, float, decimal, numeric number
Tipo de bits bit Booleano (verdadero o falso)
Tipos de fecha & hora date, datetime, datetime2, time, datetimeoffset string
Tipos binarios varbinary, binary, image, timestamp/rowversion Cadena codificada en BASE64
Tipos de CLR geometry, geography, otros tipos CLR No está soportado. Estos tipos devuelven un error.

En la instrucción SELECT, use CAST o CONVERT, o bien utilice un método o propiedad CLR, para convertir los datos de origen en un tipo de datos SQL Server que pueda convertirse correctamente a un tipo JSON. Por ejemplo, utilice STAsText() para el tipo geometry o ToString() para cualquier tipo CLR. El tipo del valor de salida JSON se deriva del tipo de valor devuelto de la conversión aplicada en la instrucción SELECT.
Otros tipos uniqueidentifier, money string

Más información sobre JSON en el motor de base de datos de SQL

Para obtener una introducción visual a la compatibilidad integrada con JSON, consulte los vídeos siguientes: