

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.

# Consultas con computación criptográfica para Clean Rooms
<a name="crypto-computing-queries"></a>

En este tema se proporciona información sobre cómo escribir consultas que utilicen tablas de datos cifradas mediante computación criptográfica para Clean Rooms.

**Topics**
+ [Consultas que se ramifican en NULL](#queries-branch-on-null)
+ [Asignar una columna de origen a varias columnas de destino](#queries-mapping)
+ [Usar los mismos datos para las consultas JOIN y SELECT](#queries-using-same-data)

## Consultas que se ramifican en NULL
<a name="queries-branch-on-null"></a>

Tener una ramificación de consulta en una instrucción NULL significa usar una sintaxis similar a `IF x IS NULL THEN 0 ELSE 1`.

Las consultas siempre se pueden ramificar en instrucciones NULL en columnas de cleartext. 

Las consultas se pueden ramificar en instrucciones NULL en columnas sealed y en columnas fingerprint solo cuando el valor del parámetro **Conservar valores NULL** (`preserveNulls`) está establecido en `true`.

Las consultas que infrinjan estas restricciones pueden arrojar resultados incorrectos.

## Asignar una columna de origen a varias columnas de destino
<a name="queries-mapping"></a>

Una columna de origen puede asignarse a varias columnas de destino. Por ejemplo, puede que desee utilizar tanto JOIN como SELECT en una columna. 

Para obtener más información, consulte [Usar los mismos datos para las consultas JOIN y SELECT](#queries-using-same-data).

## Usar los mismos datos para las consultas JOIN y SELECT
<a name="queries-using-same-data"></a>

Si los datos de una columna no son confidenciales, pueden aparecer en una columna de destino de cleartext, lo que permite utilizarlos para cualquier fin.

Si los datos de una columna son confidenciales y deben usarse tanto para las consultas JOIN como para las consultas SELECT, asigne dicha columna de origen a dos columnas de destino del archivo de salida. Una columna se cifra con el `type` como columna fingerprint y la otra columna se cifra con el `type` como columna sellada. La generación de esquemas interactivos del cliente de cifrado C3R sugiere sufijos de encabezado de `_fingerprint` y `_sealed`. Estos sufijos de encabezado pueden ser una convención útil para diferenciar dichas columnas rápidamente.