Uso de la cláusula BY para consultar el ID de 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 ID de documento

Si bien puede definir campos destinados a ser identificadores únicos (por ejemplo, el VIN de un vehículo), el verdadero identificador único de un documento es elidcampo de metadatos, tal y como se describe enInserción de documentos. Por este motivo, puede utilizar laidpara crear relaciones entre tablas.

El documentoidsolo se puede acceder directamente en la vista confirmada, pero también puede proyectarlo en la vista de usuario predeterminada mediante laBYcláusula. Para ver un ejemplo, consulte 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_ides un alias definido por el usuario que se declara en elFROMcláusula, utilizando laBYpalabra clave. Ester_idalias se vincula alidcampo de metadatos para cada documento del conjunto de resultados de la consulta. Puede utilizar este alias en elSELECTcláusula y también en elWHEREcláusula de una consulta en elvista de usuario.

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

Unirse a un ID de documento

Supongamos que está utilizando el documentoidde una tabla como clave externa en un campo definido por el usuario de otra tabla. Puede utilizar elBYpara escribir una consulta de combinación interna para las dos tablas de estos campos (similar aUnirse a las vistas confirmadas y de usuarioen el tema anterior).

En el siguiente ejemplo se unen dos tablas llamadasDriversLicenseyPersonen suPersonIdy el documentoidcampos respectivamente, utilizando elBYcláusula para este último.

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 enActualización y eliminación de documentos.