tablas registros que ordenar ejemplos consultas consultar condiciones con clausulas avanzadas select cassandra where cql

registros - que es select



Alternativa para la condición O después de la cláusula where en la declaración seleccionada Cassandra (2)

¿Es posible en Cassandra usar múltiples condiciones union ed juntas después de la cláusula where en una instrucción select como en cualquiera de los RDBMS? Aquí está mi código:

SELECT * from TABLE_NAME WHERE COND1= ''something'' OR COND2 = ''something'';


Respuesta simple: no hay un equivalente de O

http://www.datastax.com/docs/0.8/dml/using_cql

Aquí está la referencia de comando para v0.8:

http://www.datastax.com/docs/0.8/references/cql#cql-reference

SELECCIONE [PRIMERO N] [INVERTIDO] DESDE [USAR] [DONDE] [LIMITE N];

..

La cláusula WHERE proporciona el filtrado de las filas que aparecen en los resultados. La cláusula puede filtrar en un nombre de clave, o rango de claves, y en el caso de columnas indexadas, en valores de columna. Los filtros clave se especifican utilizando la palabra clave KEY, un operador relacional (uno de =,>,> =, <y <=) y un valor de término. Cuando los términos aparecen en ambos lados de un operador relacional, se supone que el filtro se aplica a una columna indexada. Con los filtros de índice de columna, el término a la izquierda del operador es el nombre, el término a la derecha es el valor para filtrar.


Suponiendo que COND es el nombre de la clave principal de su tabla, puede hacer:

SELECT * from TABLE_NAME WHERE COND1 in (''something'', ''something'');

Por lo tanto, no hay una operación OR completamente general, pero parece que esto puede ser equivalente a lo que estabas tratando de hacer.

Recuerde que, al usar CQL, esa planificación de consultas no debe ser una de sus fortalezas. El código de Cassandra suele suponer que tiene grandes cantidades de datos, por lo que tratará de evitar hacer cualquier consulta que pueda terminar siendo costosa. En el mundo de RMDBS, usted estructura sus datos según las relaciones intrínsecas (tercera forma normal, etc.), mientras que en Cassandra, estructura sus datos según las consultas que espera que necesite. La desnormalización es (perdona el juego de palabras) la norma.

El punto es que CQL está destinado a ser una sintaxis más familiar y amigable para hacer consultas Cassandra que la interfaz Thrift RPC más antigua. No pretende ser completamente expresivo y flexible como lo es SQL.