Bonjour,

Je cherche à extraire des données d'une structure JSON.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/********************************************/
Declare @JsonData nvarchar(max) = '
{
	"entete": [
		"matricule",
		"nom",
		"prenom"
	],
	"donnees": [
		[
			"000000",
			"JACQUET",
			"MURIELLE"
		],
		[
			"000020",
			"MARQUES",
			"LUIS"
		],
		[
			"000108",
			"PINTO",
			"Jean Charles"
		]
	]
}'
SELECT value
	FROM OPENJSON(@JsonData, N'$.donnees') as js
/********************************************/
Le résultat est le suivant
	Value
	---------------------------------------
	["000000","JACQUET","MURIELLE"]
	["000020","MARQUES","LUIS"]
	["000108","PINTO","Jean Charles"]
Je cherche à extraire ces données en 3 colonnes distinctes, Matricule, Nom, Prénom.
Mes tests avec CROSS APPLY permet bien de traiter le tableau. Mais le format de sortie n'est pas ce que j'attends.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT *
	FROM OPENJSON(@JsonData, N'$.donnees') as js 
	CROSS APPLY
     OPENJSON(JS.[value])
Si quelqu'un a une idée, elle serait vraiment la bienvenue.

Daniel Eyer