Cassandra Linguagem de consulta (CQL): inserir, atualizar (exemplo)
Inserir dados
O ESB ( Cassandra instrução insert grava dados em Cassandra colunas em forma de linha. Cassandra A consulta de inserção armazenará apenas as colunas fornecidas pelo usuário. Você deve necessariamente especificar apenas a coluna da chave primária.
Não ocupará nenhum espaço para valores não fornecidos. Nenhum resultado é retornado após a inserção.
Sintaxe
Insert into KeyspaceName.TableName(ColumnName1, ColumnName2, ColumnName3 . . . .) values (Column1Value, Column2Value, Column3Value . . . .)
Exemplo
Aqui está o instantâneo do executado Cassandra Inserir na consulta da tabela que irá inserir um registro em Cassandra tabela 'Aluno'.
Insert into University.Student(RollNo,Name,dept,Semester) values(2,'Michael','CS', 2);
Após a execução bem-sucedida do comando Inserir em Cassandra, uma linha será inserida no Cassandra tabela Aluno com RollNo 2, Nome Michael, dept CS e Semestre 2.
Aqui está o instantâneo do estado atual do banco de dados.
Upsert Dados
Cassandra perturba. Upsert significa que Cassandra irá inserir uma linha se uma chave primária ainda não existir; caso contrário, se a chave primária já existir, ele atualizará essa linha.
Dados de atualização
O ESB ( Cassandra A consulta de atualização é usada para atualizar os dados no Cassandra mesa. Se nenhum resultado for retornado após a atualização dos dados, significa que os dados foram atualizados com sucesso, caso contrário, um erro será retornado. Os valores das colunas são alterados na cláusula 'Set' enquanto os dados são filtrados com a cláusula 'Where'.
Sintaxe
Update KeyspaceName.TableName Set ColumnName1=new Column1Value, ColumnName2=new Column2Value, ColumnName3=new Column3Value, . . . Where ColumnName=ColumnValue
Exemplo
Aqui está a captura de tela que mostra o estado do banco de dados antes de atualizar os dados.
Aqui está o instantâneo do executado Cassandra Comando de atualização que atualiza o registro na tabela Aluno.
Update University.Student Set name='Hayden' Where rollno=1;
Após a execução bem-sucedida da consulta de atualização em Cassandra 'Atualizar Aluno', o nome do aluno será alterado de 'Clark' para 'Hayden' que possui rollno 1.
Aqui está a captura de tela que mostra o estado do banco de dados após a atualização dos dados.
Cassandra Excluir dados
O comando 'Excluir' remove uma linha inteira ou algumas colunas da tabela Aluno. Quando os dados são excluídos, eles não são excluídos da tabela imediatamente. Em vez disso, os dados excluídos são marcados com uma lápide e removidos após a compactação.
Sintaxe
Delete from KeyspaceName.TableName Where ColumnName1=ColumnValue
O referido Cassandra A sintaxe de exclusão de linha excluirá uma ou mais linhas, dependendo da filtragem de dados na cláusula where.
Delete ColumnNames from KeyspaceName.TableName Where ColumnName1=ColumnValue
A sintaxe acima excluirá algumas colunas da tabela.
Exemplo
Aqui está o instantâneo que mostra o estado atual do banco de dados antes de excluir os dados.
Aqui está o instantâneo do comando que removerá uma linha da tabela Student.
Delete from University.Student where rollno=1;
Após a execução bem-sucedida do comando CQL Delete, uma linha será excluída da tabela Student onde o valor rollno é 1.
Aqui está o instantâneo que mostra o estado do banco de dados após a exclusão dos dados.
O Quê Cassandra não suporta
Existem as seguintes limitações em Cassandra linguagem de consulta (CQL).
- CQL não oferece suporte a consultas de agregação como max, min, avg
- CQL não suporta agrupamento por, tendo consultas.
- CQL não oferece suporte a junções.
- CQL não oferece suporte a consultas OR.
- CQL não oferece suporte a consultas curinga.
- CQL não oferece suporte a consultas de união e interseção.
- As colunas da tabela não podem ser filtradas sem a criação do índice.
- A consulta maior que (>) e menor que (<) só é suportada na coluna de cluster. Cassandra a linguagem de consulta não é adequada para fins analíticos porque tem muitas limitações.
Cassandra Onde cláusula
In Cassandra, a recuperação de dados é uma questão delicada. A coluna é filtrada em Cassandra criando um índice em colunas de chave não primária.
Sintaxe
Select ColumnNames from KeyspaceName.TableName Where ColumnName1=Column1Value AND ColumnName2=Column2Value AND . . .
Exemplo
- Aqui está o instantâneo que mostra a recuperação de dados da tabela Student sem filtragem de dados.
select * from University.Student;
Dois registros são recuperados da tabela Student.
- Aqui está o instantâneo que mostra a recuperação de dados do Student com filtragem de dados. Um registro é recuperado.
Os dados são filtrados por coluna de nome. São recuperados todos os registros que possuem nome igual a Guru99.
select * from University. Student where name='Guru99';