Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation de la clause BY pour interroger l'ID du document
Bien que vous puissiez définir des champs destinés à être des identifiants uniques (par exemple, le VIN d'un véhicule), le véritable identifiant unique d'un document est le champ deid
métadonnées, comme décrit dansInsertion de documents. C'est pourquoi vous pouvez utiliser leid
champ pour créer des relations entre les tables.
Leid
champ du document est directement accessible uniquement dans la vue validée, mais vous pouvez également le projeter dans la vue utilisateur par défaut à l'aide de laBY
clause. Pour un exemple, consultez la requête suivante et ses résultats.
SELECT r_id, r.VIN, r.LicensePlateNumber, r.State, r.City, r.Owners FROM VehicleRegistration AS r BY r_id WHERE r_id = '
3Qv67yjXEwB9SjmvkuG6Cp
'
{
r_id: "3Qv67yjXEwB9SjmvkuG6Cp",
VIN: "1N4AL11D75C109151",
LicensePlateNumber: "LEWISR261LL",
State: "WA",
City: "Seattle",
Owners: {
PrimaryOwner: { PersonId: "294jJ3YUoH1IEEm8GSabOs" },
SecondaryOwners: [{ PersonId: "5Ufgdlnj06gF5CWcOIu64s" }]
}
}
Dans cette requête,r_id
se trouve un alias défini par l'utilisateur qui est déclaré dans laFROM
clause, à l'aide duBY
mot clé. Cetr_id
alias est lié au champ deid
métadonnées de chaque document du jeu de résultats de la requête. Vous pouvez utiliser cet alias dans laSELECT
clause ainsi que dans laWHERE
clause d'une requête dans la vue utilisateur.
Pour accéder à d'autres attributs de métadonnées, vous devez toutefois interroger la vue validée.
Adhésion via un numéro de document
Supposons que vous utilisiez le documentid
d'une table comme clé étrangère dans un champ défini par l'utilisateur d'une autre table. Vous pouvez utiliser laBY
clause pour écrire une requête de jointure interne pour les deux tables de ces champs (commeRejoindre les points de vue des utilisateurs et des utilisateurs dans la rubrique précédente).
L'exemple suivant joint deux tables nomméesDriversLicense
etPerson
sur leurPersonId
id
champ de document, respectivement, à l'aide de laBY
clause correspondant à ce dernier.
SELECT * FROM DriversLicense AS d INNER JOIN Person AS p BY pid ON d.PersonId = pid WHERE pid = '
1CWScY2qHYI9G88C2SjvtH
'
Pour savoir comment apporter des modifications à un document de votre tableau, passez àMise à jour et suppression de documents.