Uso de la cláusula BY para consultar el identificador del documento - Amazon Quantum Ledger Database (Amazon QLDB)

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de la cláusula BY para consultar el identificador del documento

Si bien puede definir campos concebidos para ser identificadores únicos (por ejemplo, el número de chasis [VIN] de un vehículo), el verdadero identificador único de un documento es el campo de metadatos id, como se describe en Inserción de documentos. Por este motivo, puede utilizar el campo id para crear relaciones entre tablas.

Solo se puede acceder directamente al campo id del documento en la vista confirmada, pero también puede proyectarlo en la vista de usuario predeterminada mediante la cláusula BY. Para ver un ejemplo, repase la siguiente consulta y sus resultados.

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" }] } }

En esta consulta, r_id es un alias definido por el usuario que se establece en la cláusula FROM mediante la palabra clave BY. Este alias r_id se une con el campo de metadatos id de cada documento del conjunto de resultados de la consulta. Puede usar este alias en la cláusula SELECT y también en la cláusula WHERE de una consulta en la vista de usuario.

Sin embargo, para acceder a otros atributos de metadatos, debe consultar la vista confirmada.

Combinar con el identificador de documento

Suponga que utiliza el documento id de una tabla como clave externa en un campo definido por el usuario de otra tabla. Puede usar la cláusula BY para escribir una consulta de combinación interna para las dos tablas de estos campos (similar a Combinar las vistas confirmadas y de usuario del tema anterior).

El siguiente ejemplo combina dos tablas denominadas DriversLicense y Person en sus campos PersonId e id de documento respectivamente, utilizando la cláusula BY para esta última.

SELECT * FROM DriversLicense AS d INNER JOIN Person AS p BY pid ON d.PersonId = pid WHERE pid = '1CWScY2qHYI9G88C2SjvtH'

Para obtener información sobre cómo realizar cambios en un documento de la tabla, continúe con Actualizar y eliminar documentos.