--- title: "Sintaxis y excepciones de ZCQL V2" url: https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/syntax-exceptions/ description: "ZCQL es el lenguaje de consulta propio de Catalyst, inspirado en lenguajes de consulta conocidos, que puedes utilizar para consultar la base de datos de tu aplicación de manera eficiente." last_updated: 2026-03-20T16:21:56Z service: Cloud Scale type: general --- # Sintaxis y excepciones de ZCQL V2 Catalyst ha añadido varias mejoras y actualizaciones de sintaxis para ayudarte a escribir consultas ZCQL de manera más efectiva. Estas nuevas actualizaciones de sintaxis proporcionarán funcionalidades adicionales y te permitirán realizar operaciones relacionadas con datos en el Data Store con mucha mayor facilidad. > **Nota:** * Para usar estas mejoras de funcionalidad, necesitarás migrar a la versión **V2**. Las actualizaciones de sintaxis no serán aplicables si las implementas mientras ejecutas comandos ZCQL en **V1**. * A partir del **1 de diciembre de 2024**, todos tus proyectos actuales en todas tus [organizaciones](https://docs.catalyst.zoho.com/es/getting-started/catalyst-organizations/) presentes en el [entorno de desarrollo](https://docs.catalyst.zoho.com/es/deployment-and-billing/environments/development-environment/) se mapearán automáticamente al **ZCQL V2 Parser**. * A partir del **1 de abril de 2025**, todos los proyectos presentes en todas las *organizaciones* que ya hayan sido mapeados al **ZCQL V2 Parser** en el *entorno de desarrollo* se mapearán automáticamente al **ZCQL V2 Parser** en el [entorno de producción](https://docs.catalyst.zoho.com/es/deployment-and-billing/environments/production-environment/), si y cuando se habilite producción para el proyecto. Las siguientes excepciones y particularidades de sintaxis deben tenerse en cuenta al ejecutar una consulta ZCQL: 1. La función ZCQL [`AVG ()`](https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/zcql-functions/#avg) se puede aplicar a los siguientes tipos de datos: - **Date** - **DateTime** - **Boolean** 2. Cuando indicas un valor en tu sentencia ZCQL, indica el valor entre comillas simples. Por ejemplo, si necesitas obtener un nombre particular de una base de datos de empleados, escribirás el comando de la siguiente manera: ```sql SELECT Name FROM Employee_DB WHERE name = 'Amelia' ``` 3. Si una columna es de tipo de dato Boolean: - No se permiten valores de cadena. - El tipo de dato Boolean solo admitirá los siguientes valores: - FALSE - TRUE - NULL 4. Si estás usando un **tipo de dato Encrypted**, las siguientes funciones de ZCQL no se pueden usar en esa columna: - `AVG()` - `SUM()` - `MAX()` - `MIN()` 5. Se han añadido [excepciones apropiadas](https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/syntax-exceptions/#list-of-zcql-exceptions) cuando usas operadores comparativos como `Less Than`, `Greater Than`, `Less Than or Equal` y `Greater Than or Equal` en tipos de datos **Encrypted Text** y **Boolean**. Estas excepciones no son aplicables para los operadores `Equal` y `Not Equal`. 6. Las subconsultas ahora son compatibles en las sentencias de la cláusula `WHERE`. Puedes obtener más información sobre ellas en este [documento de ayuda](https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/where/#subqueries-in-where-clause). 7. La cláusula [`ORDER BY`](https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/groupby-orderby/#order-by-statement) ahora admite el uso de [funciones de ZCQL](https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/zcql-functions/). 8. En todas las columnas donde uses la cláusula `ORDER BY`, ahora se puede aplicar la funcionalidad `ASC` y `DESC`. También puedes aplicar `ASC` y `DESC` para columnas individuales. **Base de datos de ejemplo**: Considera la siguiente base de datos - **ZylkerEmployeeCompensation**
| Name | Salary | Reimbursement |
|---|---|---|
| Michelle Mascarenhas | 90000 | 10000 |
| Bruce Kyle | 3000000 | 45000 |
| Clark Kane | 3300 | 1500 |
| Judith Bridges | 4700 | 300 |
| Devon Dreymond | 80000 | 2300 |
| Ashley Kim | 6000 | 200 |
| ZylkerEmployeeCompensation.Salary | ZylkerEmployeeCompensation.Reimbursement |
|---|---|
| 3300 | 45000 |
| 4700 | 10000 |
| 6000 | 2300 |
| 80000 | 1500 |
| 90000 | 300 |
| 3000000 | 200 |
| Name | Salary | Reimbursement |
|---|---|---|
| Michelle Mascarenhas | 90000 | 10000 |
| Bruce Kyle | 3000000 | 45000 |
| Clark Kane | 3300 | 1500 |
| Judith Bridges | 4700 | 300 |
| Devon Dreymond | 80000 | 2300 |
| Ashley Kim | 6000 | 200 |
| Manager | Member |
|---|---|
| Michelle Mascarenhas | Bruce Kyle |
| Michelle Mascarenhas | Clark Kane |
| Judith Bridges | Michelle Mascarenhas |
| Manager.Name | Member.Name |
|---|---|
| Michelle Mascarenhas | Bruce Kyle |
| Michelle Mascarenhas | Clark Kane |
| Judith Bridges | Michelle Mascarenhas |
| Tipo de dato | Caso | Consulta ZCQL de ejemplo | Excepción activada |
|---|---|---|---|
| Encrypted Text | Ciertos operadores no son compatibles | SELECT * FROM temp WHERE enc > 'temsp' | `Operator > is not supported for ENCRYPTED TEXT` La misma excepción se aplica, pero el mensaje de excepción se modificará en consecuencia si usas estos operadores **<**, **<=**, **>=** en la sentencia ZCQL |
| `LIKE` no es compatible | SELECT * FROM temp WHERE enc LIKE '*temsp' | `Operator LIKE is not supported for ENCRYPTED TEXT` La misma excepción se aplica, pero el mensaje de excepción se modificará en consecuencia si usas **NOT LIKE** en la sentencia ZCQL | |
| `BETWEEN` no es compatible | SELECT * FROM temp WHERE enc BETWEEN 'one' AND 'ten' | `Operator BETWEEN is not supported for ENCRYPTED TEXT` La misma excepción se aplica, pero el mensaje de excepción se modificará en consecuencia si usas **NOT BETWEEN** en la sentencia ZCQL | |
| `IN` no es compatible | SELECT * FROM temp WHERE enc IN ('one','three') | `Operator IN is not supported for ENCRYPTED TEXT` La misma excepción se aplica si usas **NOT IN** en tu consulta, pero el mensaje de excepción se modificará en consecuencia | |
| Las funciones de ZCQL no son compatibles | SELECT AVG(enc) FROM temp | `AVG() function is not supported for ENCRYPTED_TEXT` Las [funciones de ZCQL](https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/zcql-functions/) no son compatibles con **Encrypted Text**. | |
| Boolean | Ciertos operadores no son compatibles | SELECT * FROM temp WHERE bools > FALSE | `Operator > is not supported for BOOLEAN` La misma excepción se aplica, pero el mensaje de excepción se modificará en consecuencia si usas estos operadores **<**, **<=**, **>=** en la sentencia ZCQL |
| `LIKE` no es compatible | SELECT * FROM temp WHERE bools LIKE FALSE | `Operator LIKE is not supported for BOOLEAN` La misma excepción se aplica si usas **NOT LIKE** en tu consulta, pero el mensaje de excepción se modificará en consecuencia | |
| `BETWEEN` no es compatible | SELECT * FROM temp WHERE bools BETWEEN TRUE and FALSE | `Operator BETWEEN is not supported for BOOLEAN` La misma excepción se aplica si usas **NOT BETWEEN** en tu consulta, pero el mensaje de excepción se modificará en consecuencia | |
| `IN` no es compatible | SELECT * FROM temp WHERE bools IN (TRUE, FALSE) | `Operator IN is not supported for BOOLEAN` La misma excepción se aplica si usas **NOT IN** en tu consulta, pero el mensaje de excepción se modificará en consecuencia | |
| VarChar | Longitud máxima excedida | INSERT INTO temp (Fishes) value ('salmon') | `'salmon' data too long for column 'Fishes'` La columna `Fishes` fue creada como **VarChar** y el **MaxLength** se estableció en `5`. En esta sentencia, `'Salmon'` excede el **MaxLength** |
| Integer | Valor máximo excedido | INSERT INTO temp (numbers) VALUE (546895326908) | `For column 'ints' INT value should be between -9999999999 and 9999999999` La columna numbers fue creada como **INT**. El valor del tipo de dato **INT** debe estar entre `-9999999999` y `9999999999` |
| Big Integer | Valor máximo excedido | INSERT INTO temp (numbers) VALUE (92343432412351 435123453245) | `Given numeric value 92343432412351 435123453 is too large` La columna numbers fue creada como **BIGINT**. El valor del tipo de dato **BIGINT** debe estar entre `-9223372036854775808` y `9223372036854775807` |
| Text | Valor no encerrado entre comillas simples | SELECT * FROM temp WHERE name = one | `Unknown Table temp or Unknown Column one in WHERE` El valor `one` se considerará como columna si no está encerrado entre comillas: '`one`' |