Cassandra Querytaal (CQL): invoegen in, bijwerken (voorbeeld)
Gegevens invoegen
De Cassandra insert-instructie schrijft gegevens in Cassandra kolommen in rijvorm. Cassandra invoegquery slaat alleen de kolommen op die door de gebruiker zijn opgegeven. U hoeft noodzakelijkerwijs alleen de primaire sleutelkolom op te geven.
Er wordt geen ruimte ingenomen voor niet opgegeven waarden. Er worden geen resultaten geretourneerd na het invoegen.
Syntaxis
Insert into KeyspaceName.TableName(ColumnName1, ColumnName2, ColumnName3 . . . .) values (Column1Value, Column2Value, Column3Value . . . .)
Voorbeeld
Hier is de momentopname van de geรซxecuteerde Cassandra Invoegen in tabelquery waarin รฉรฉn record wordt ingevoegd Cassandra tabel 'Studenten'.
Insert into University.Student(RollNo,Name,dept,Semester) values(2,'Michael','CS', 2);
Na succesvolle uitvoering van het commando Insert into Cassandra, wordt รฉรฉn rij ingevoegd in de Cassandra tabel Student met Rolnr. 2, Naam Michael, afd. CS en Semester 2.
Hier is de momentopname van de huidige databasestatus.
Gegevens bijwerken
Cassandra doet opkomen. Upsert betekent dat Cassandra Voegt een rij in als er nog geen primaire sleutel bestaat. Als de primaire sleutel al bestaat, wordt die rij bijgewerkt.
Gegevens bijwerken
De Cassandra Bijwerkquery wordt gebruikt om de gegevens in het bestand bij te werken Cassandra tafel. Als er geen resultaten worden geretourneerd na het updaten van de data, betekent dit dat de data succesvol is geรผpdatet, anders wordt er een fout geretourneerd. Kolomwaarden worden gewijzigd in de 'Set'-clausule terwijl data wordt gefilterd met de 'Where'-clausule.
Syntaxis
Update KeyspaceName.TableName
Set ColumnName1=new Column1Value,
ColumnName2=new Column2Value,
ColumnName3=new Column3Value,
.
.
.
Where ColumnName=ColumnValue
Voorbeeld
Hier is de schermafbeelding die de databasestatus toont voordat de gegevens worden bijgewerkt.
Hier is de momentopname van de geรซxecuteerde Cassandra Update-opdracht waarmee de record in de tabel Student wordt bijgewerkt.
Update University.Student Set name='Hayden' Where rollno=1;
Na succesvolle uitvoering van de updatequery in Cassandra 'Update Student', de naam van de student wordt gewijzigd van 'Clark' in 'Hayden' met rolnummer 1.
Hier is de schermafbeelding die de databasestatus toont na het updaten van gegevens.
Cassandra Verwijder data
Commando 'Verwijderen' verwijdert een hele rij of enkele kolommen uit de tabel Student. Wanneer gegevens worden verwijderd, worden deze niet onmiddellijk uit de tabel verwijderd. In plaats daarvan worden verwijderde gegevens gemarkeerd met een grafsteen en na verdichting verwijderd.
Syntaxis
Delete from KeyspaceName.TableName Where ColumnName1=ColumnValue
Bovenstaande Cassandra De rijsyntaxis verwijderen verwijdert een of meer rijen, afhankelijk van de gegevensfiltratie in de Where-clausule.
Delete ColumnNames from KeyspaceName.TableName Where ColumnName1=ColumnValue
De bovenstaande syntaxis verwijdert enkele kolommen uit de tabel.
Voorbeeld
Hier is de momentopname die de huidige databasestatus toont voordat gegevens worden verwijderd.
Hier is de momentopname van de opdracht die รฉรฉn rij uit de tabel Student verwijdert.
Delete from University.Student where rollno=1;
Na succesvolle uitvoering van de opdracht CQL Verwijderen wordt รฉรฉn rij verwijderd uit de tabel Student, waarbij de waarde rollno 1 is.
Hier is de momentopname die de databasestatus toont na het verwijderen van gegevens.
Wat Cassandra ondersteunt
Er zijn de volgende beperkingen in Cassandra querytaal (CQL).
- CQL ondersteunt geen aggregatiequery's zoals max, min, avg
- CQL ondersteunt geen groepen door vragen te stellen.
- CQL ondersteunt geen joins.
- CQL ondersteunt geen OR-query's.
- CQL ondersteunt geen jokertekenquery's.
- CQL ondersteunt geen Union- en Intersection-query's.
- Tabelkolommen kunnen niet worden gefilterd zonder de index te maken.
- Query's groter dan (>) en kleiner dan (<) worden alleen ondersteund op clusterkolommen. Cassandra querytaal is niet geschikt voor analysedoeleinden omdat deze zoveel beperkingen kent.
Cassandra Waar clausule
In Cassandrais het ophalen van gegevens een gevoelige kwestie. De kolom wordt erin gefilterd Cassandra door een index te maken voor niet-primaire sleutelkolommen.
Syntaxis
Select ColumnNames from KeyspaceName.TableName Where ColumnName1=Column1Value AND ColumnName2=Column2Value AND . . .
Voorbeeld
- Hier is de momentopname die het ophalen van gegevens uit de Student-tabel laat zien zonder gegevensfiltratie.
select * from University.Student;
Er worden twee records opgehaald uit de Student-tabel.
- Hier is de momentopname die het ophalen van gegevens uit Student met gegevensfiltratie laat zien. Er wordt รฉรฉn record opgehaald.
Gegevens worden gefilterd op naamkolom. Alle records worden opgehaald waarvan de naam gelijk is aan Guru99.
select * from University. Student where name='Guru99';










