J'ai une collection documentDB qui ressemble à cet exemple:SELECT seul champ de tableau intégré dans documentDB azur
{
"data1": "hello",
"data2": [
{
"key": "key1",
"value": "value1"
},
{
"key": "key2",
"value": "value2"
}
}
En réalité, les données ont beaucoup d'autres domaines et le tableau intégré a des domaines dans lesquels les données est assez grand. J'ai besoin d'interroger les données et je me soucie du petit champ "clé" dans le tableau data2 mais je n'ai pas besoin de la grande "valeur". Je trouve que le retour de toutes les données de valeur cause des problèmes de performance, mais si j'exclue les données de tableau du SELECT ensemble, c'est rapide (donc la taille des données est le problème).
Je n'arrive pas à trouver un moyen de retourner uniquement la "clé" mais à exclure la "valeur" dans le tableau incorporé.
Je veux essentiellement SELECT r.data1, r.data2.key
et de l'avoir de retour si:
{
"data1": "hello",
"data2": [
{
"key": "key1"
},
{
"key": "key2"
}
}
mais il ne semble pas possible de sélectionner r.data2.key
car il est dans un tableau
Jointure le fera revenir un copie de chaque document pour chaque élément de tableau "data2", ce qui ne fonctionne pas pour moi. Ma seule autre option serait de migrer les données et de mettre les données que je veux dans son propre tableau afin que je puisse sélectionner l'objet entier.
Est-ce possible d'une certaine façon que je n'ai pas pu comprendre?