2017-06-21 1 views
0

J'ai une requête qui ressemble à ceci:Obtenir la longueur d'un résultat `FOR JSON AUTO` dans SQL Server?

SELECT tbl.A, tbl.B, tbl.C 
FROM MyTable tbl 
FOR JSON AUTO 

Cela fonctionne très bien et retourne le JSON pour moi de travailler avec. Cependant, j'ai besoin de faire un pré-traitement basé sur cette chaîne générée dans une procédure stockée avant de renvoyer le résultat.

Alors, comment puis-je obtenir la longueur de cette chaîne JSON avant de le renvoyer?

Répondre

2

Si vous stockez la chaîne JSON dans une variable, vous pouvez déterminer la longueur de la variable.

DECLARE @var NVARCHAR(MAX) 

SET @var = (
      SELECT tbl.A,tbl.B,tbl.C 
      FROM MyTable tbl 
      FOR JSON AUTO 
      ) 
SELECT 
    LEN(@var) 
+0

Qui a fait le travail. Merci! – Jaxidian