Cassandra Språk (CQL): Sett inn i, oppdater (eksempel)
Sett inn data
Ocuco Cassandra insert statement skriver data inn Cassandra kolonner i radform. Cassandra insert query vil lagre bare de kolonnene som er gitt av brukeren. Du må nødvendigvis spesifisere bare primærnøkkelkolonnen.
Det vil ikke ta plass for ikke gitte verdier. Ingen resultater returneres etter innsetting.
syntax
Insert into KeyspaceName.TableName(ColumnName1, ColumnName2, ColumnName3 . . . .) values (Column1Value, Column2Value, Column3Value . . . .)
Eksempel
Her er øyeblikksbildet av de henrettede Cassandra Sett inn i tabellspørring som vil sette inn én post Cassandra tabellen 'Student'.
Insert into University.Student(RollNo,Name,dept,Semester) values(2,'Michael','CS', 2);
Etter vellykket utførelse av kommandoen Sett inn i Cassandra, vil én rad settes inn i Cassandra tabell Student med RollNo 2, Navn Michael, avd CS og Semester 2.
Her er øyeblikksbildet av gjeldende databasetilstand.
Upsert Data
Cassandra opprører. Upsert betyr det Cassandra vil sette inn en rad hvis en primærnøkkel ikke allerede eksisterer, ellers hvis primærnøkkelen allerede eksisterer, vil den oppdatere den raden.
Oppdater data
Ocuco Cassandra Oppdateringsspørring brukes til å oppdatere dataene i Cassandra bord. Hvis ingen resultater returneres etter oppdatering av data, betyr det at data er vellykket oppdatert, ellers vil en feil returneres. Kolonneverdier endres i 'Set'-leddet mens data filtreres med 'Where'-leddet.
syntax
Update KeyspaceName.TableName Set ColumnName1=new Column1Value, ColumnName2=new Column2Value, ColumnName3=new Column3Value, . . . Where ColumnName=ColumnValue
Eksempel
Her er skjermbildet som viser databasetilstanden før du oppdaterer data.
Her er øyeblikksbildet av de henrettede Cassandra Oppdateringskommando som oppdaterer posten i elevtabellen.
Update University.Student Set name='Hayden' Where rollno=1;
Etter vellykket utførelse av oppdateringsspørringen i Cassandra 'Oppdater student', studentnavn vil bli endret fra 'Clark' til 'Hayden' som har rollno 1.
Her er skjermbildet som viser databasetilstanden etter oppdatering av data.
Cassandra Slett data
Kommandoen 'Slett' fjerner en hel rad eller noen kolonner fra tabellen Student. Når data slettes, slettes de ikke umiddelbart fra tabellen. I stedet merkes slettede data med en gravstein og fjernes etter komprimering.
syntax
Delete from KeyspaceName.TableName Where ColumnName1=ColumnValue
Ovennevnte Cassandra slette radsyntaks vil slette én eller flere rader avhengig av datafiltrering i where-klausulen.
Delete ColumnNames from KeyspaceName.TableName Where ColumnName1=ColumnValue
Syntaksen ovenfor vil slette noen kolonner fra tabellen.
Eksempel
Her er øyeblikksbildet som viser gjeldende databasestatus før du sletter data.
Her er øyeblikksbildet av kommandoen som vil fjerne én rad fra tabellen Student.
Delete from University.Student where rollno=1;
Etter vellykket utførelse av CQL Delete-kommandoen, vil én rad bli slettet fra tabellen Student der rollno-verdien er 1.
Her er øyeblikksbildet som viser databasetilstanden etter sletting av data.
Hva Cassandra støtter ikke
Det er følgende begrensninger i Cassandra spørringsspråk (CQL).
- CQL støtter ikke aggregeringsspørringer som max, min, avg
- CQL støtter ikke grupper ved å ha spørsmål.
- CQL støtter ikke joins.
- CQL støtter ikke OR-spørringer.
- CQL støtter ikke jokertegnspørringer.
- CQL støtter ikke Union, Intersection-spørringer.
- Tabellkolonner kan ikke filtreres uten å opprette indeksen.
- Større enn (>) og mindre enn (<)-spørringen støttes bare på klyngekolonnen. Cassandra spørringsspråk er ikke egnet for analyseformål fordi det har så mange begrensninger.
Cassandra Hvor klausul
In Cassandra, er datainnhenting et sensitivt problem. Kolonnen filtreres inn Cassandra ved å lage en indeks på ikke-primære nøkkelkolonner.
syntax
Select ColumnNames from KeyspaceName.TableName Where ColumnName1=Column1Value AND ColumnName2=Column2Value AND . . .
Eksempel
- Her er øyeblikksbildet som viser datahentingen fra Studenttabellen uten datafiltrering.
select * from University.Student;
To poster hentes fra Studenttabell.
- Her er øyeblikksbildet som viser datahentingen fra Student med datafiltrering. Én post hentes.
Data filtreres etter navnekolonne. Alle postene er hentet som har navn lik Guru99.
select * from University. Student where name='Guru99';