Cassandra Lenguaje de consulta (CQL): insertar en, actualizar (ejemplo)
Insertar datos
La Cassandra insertar declaración escribe datos en Cassandra columnas en forma de fila. Cassandra La consulta de inserción almacenará solo aquellas columnas proporcionadas por el usuario. Debe especificar necesariamente solo la columna de clave principal.
No ocupará ningún espacio para los valores no dados. No se devuelven resultados después de la inserción.
Sintaxis
Insert into KeyspaceName.TableName(ColumnName1, ColumnName2, ColumnName3 . . . .) values (Column1Value, Column2Value, Column3Value . . . .)
Ejemplo
Aquí la instantánea del ejecutado. Cassandra Insertar en la consulta de tabla que insertará un registro en Cassandra tabla 'Estudiante'.
Insert into University.Student(RollNo,Name,dept,Semester) values(2,'Michael','CS', 2);
Después de la ejecución exitosa del comando Insertar en Cassandra, se insertará una fila en el Cassandra tabla Estudiante con RollNo 2, Nombre Michael, departamento CS y Semestre 2.
Aquí está la instantánea del estado actual de la base de datos.
Insertar datos
Cassandra se molesta. Upsert significa que Cassandra insertará una fila si aún no existe una clave principal; de lo contrario, si la clave principal ya existe, actualizará esa fila.
Actualizar datos
La Cassandra La consulta de actualización se utiliza para actualizar los datos en el Cassandra mesaSi no se obtienen resultados después de actualizar los datos, significa que los datos se actualizaron correctamente; de lo contrario, se devolverá un error. Los valores de las columnas se modifican en la cláusula "Set" mientras que los datos se filtran con la cláusula "Where".
Sintaxis
Update KeyspaceName.TableName Set ColumnName1=new Column1Value, ColumnName2=new Column2Value, ColumnName3=new Column3Value, . . . Where ColumnName=ColumnValue
Ejemplo
Aquí está la captura de pantalla que muestra el estado de la base de datos antes de actualizar los datos.
Aquí la instantánea del ejecutado. Cassandra Comando de actualización que actualiza el registro en la tabla de Estudiantes.
Update University.Student Set name='Hayden' Where rollno=1;
Después de la ejecución exitosa de la consulta de actualización en Cassandra 'Actualizar estudiante', el nombre del estudiante se cambiará de 'Clark' a 'Hayden' que tiene el número 1.
Aquí está la captura de pantalla que muestra el estado de la base de datos después de actualizar los datos.
Cassandra Borrar datos
El comando "Eliminar" elimina una fila completa o algunas columnas de la tabla Estudiante. Cuando se eliminan datos, no se eliminan de la tabla inmediatamente. En su lugar, los datos eliminados se marcan con una lápida y se eliminan después de la compactación.
Sintaxis
Delete from KeyspaceName.TableName Where ColumnName1=ColumnValue
Lo anterior Cassandra La sintaxis de eliminación de filas eliminará una o más filas dependiendo de la filtración de datos en la cláusula Where.
Delete ColumnNames from KeyspaceName.TableName Where ColumnName1=ColumnValue
La sintaxis anterior eliminará algunas columnas de la tabla.
Ejemplo
Aquí está la instantánea que muestra el estado actual de la base de datos antes de eliminar datos.
Aquí está la instantánea del comando que eliminará una fila de la tabla Estudiante.
Delete from University.Student where rollno=1;
Después de la ejecución exitosa del comando CQL Delete, se eliminará una fila de la tabla Student donde el valor rollno es 1.
Aquí está la instantánea que muestra el estado de la base de datos después de eliminar datos.
Qué Cassandra no soporta
Existen las siguientes limitaciones en Cassandra lenguaje de consulta (CQL).
- CQL no admite consultas de agregación como max, min, avg
- CQL no admite grupos por consultas.
- CQL no admite uniones.
- CQL no admite consultas OR.
- CQL no admite consultas con comodines.
- CQL no admite consultas de unión e intersección.
- Las columnas de la tabla no se pueden filtrar sin crear el índice.
- La consulta mayor que (>) y menor que (<) solo se admite en la columna de agrupación. Cassandra El lenguaje de consulta no es adecuado para fines analíticos porque tiene muchas limitaciones.
Cassandra Dónde cláusula
In Cassandra, la recuperación de datos es un tema delicado. La columna se filtra en Cassandra creando un índice en columnas de clave no principal.
Sintaxis
Select ColumnNames from KeyspaceName.TableName Where ColumnName1=Column1Value AND ColumnName2=Column2Value AND . . .
Ejemplo
- Aquí está la instantánea que muestra la recuperación de datos de la tabla de Estudiantes sin filtración de datos.
select * from University.Student;
Se recuperan dos registros de la tabla de Estudiantes.
- Aquí está la instantánea que muestra la recuperación de datos de Student con filtración de datos. Se recupera un registro.
Los datos se filtran por columna de nombre. Se recuperan todos los registros que tienen el nombre igual a Guru99.
select * from University. Student where name='Guru99';