Cassandra Päringu keel (CQL): sisestamine, värskendamine (näide)

Sisesta andmed

. Cassandra insert lause kirjutab andmed sisse Cassandra veerud rea kujul. Cassandra sisestamise päring salvestab ainult need veerud, mille kasutaja on andnud. Peate tingimata määrama ainult primaarvõtme veeru.

Andmata väärtuste jaoks ei võta see ruumi. Pärast sisestamist tulemusi ei tagastata.

Süntaks

Insert into KeyspaceName.TableName(ColumnName1, ColumnName2, ColumnName3 . . . .)
values (Column1Value, Column2Value, Column3Value . . . .)

Näide

Siin on hetktõmmis hukatust Cassandra Sisestage tabelipäring, mis lisab ühe kirje Cassandra tabel "Õpilane".

Sisesta andmed

Insert into University.Student(RollNo,Name,dept,Semester) values(2,'Michael','CS', 2);

Pärast käsu Insert into edukat täitmist Cassandra, lisatakse üks rida Cassandra tabel Õpilane rollNo 2, nimi Michael, osakonna CS ja semester 2.

Siin on hetktõmmis praegusest andmebaasi olekust.

Sisesta andmed

Upsert Data

Cassandra ajab närvi. Upsert tähendab seda Cassandra lisab rea, kui primaarvõtit pole juba olemas, vastasel juhul kui primaarvõti on juba olemas, värskendab see seda rida.

Värskenda andmeid

. Cassandra Värskenduspäringut kasutatakse andmete värskendamiseks Cassandra tabel. Kui pärast andmete värskendamist tulemusi ei tagastata, tähendab see, et andmed on edukalt värskendatud, vastasel juhul tagastatakse tõrge. Veergude väärtusi muudetakse klauslis „Määra”, samal ajal kui andmeid filtreeritakse klausli „Kuhu” abil.

Süntaks

Update KeyspaceName.TableName 
Set ColumnName1=new Column1Value,
      ColumnName2=new Column2Value,
      ColumnName3=new Column3Value,
       .
       .
       .
Where ColumnName=ColumnValue

Näide

Siin on ekraanipilt, mis näitab andmebaasi olekut enne andmete värskendamist.

Värskenda andmeid

Siin on hetktõmmis hukatust Cassandra Värskenduskäsk, mis värskendab õpilase tabelis olevat kirjet.

Värskenda andmeid

Update University.Student
Set name='Hayden'
Where rollno=1;

Pärast värskenduspäringu edukat täitmist Cassandra „Uuenda õpilast”, õpilase nimi muudetakse nimest „Clark” nimeks „Hayden”, millel on rollno 1.

Siin on ekraanipilt, mis näitab andmebaasi olekut pärast andmete värskendamist.

Värskenda andmeid

Cassandra Kustuta andmed

Käsk "Kustuta" eemaldab tabelist terve rea või mõned veerud. Andmete kustutamisel ei kustutata neid tabelist kohe. Selle asemel märgitakse kustutatud andmed hauakiviga ja eemaldatakse pärast tihendamist.

Süntaks

Delete from KeyspaceName.TableName
	Where ColumnName1=ColumnValue

Ülaltoodud Cassandra rea kustutamise süntaks kustutab ühe või mitu rida olenevalt andmete filtreerimisest kus-klauslis.

Delete ColumnNames from KeyspaceName.TableName
	Where ColumnName1=ColumnValue

Ülaltoodud süntaks kustutab tabelist mõned veerud.

Näide

Siin on hetktõmmis, mis näitab praegust andmebaasi olekut enne andmete kustutamist.

Cassandra Kustuta andmed

Siin on hetktõmmis käsust, mis eemaldab tabelist Õpilane ühe rea.

Cassandra Kustuta andmed

Delete from University.Student where rollno=1;

Pärast CQL-i kustutamiskäsu edukat täitmist kustutatakse tabelist Student üks rida, kus rollno väärtus on 1.

Siin on hetktõmmis, mis näitab andmebaasi olekut pärast andmete kustutamist.

Cassandra Kustuta andmed

M Cassandra ei toeta

Siin on järgmised piirangud Cassandra päringukeel (CQL).

  1. CQL ei toeta koondamispäringuid, nagu max, min, avg
  2. CQL ei toeta päringute grupeerimist.
  3. CQL ei toeta liitumisi.
  4. CQL ei toeta VÕI päringuid.
  5. CQL ei toeta metamärgi päringuid.
  6. CQL ei toeta Unioni, Intersectioni päringuid.
  7. Tabeli veerge ei saa filtreerida ilma indeksit loomata.
  8. Suurem kui (>) ja väiksem kui (<) päringut toetatakse ainult klastrite veerus. Cassandra päringukeel ei sobi analüütikaks, kuna sellel on palju piiranguid.

Cassandra Kui klausel

In Cassandra, on andmete hankimine tundlik teema. Kolonn filtreeritakse sisse Cassandra luues indeksi mittepõhistele võtmete veergudele.

Süntaks

Select ColumnNames from KeyspaceName.TableName Where ColumnName1=Column1Value AND
	ColumnName2=Column2Value AND
	.
	.
	.

Näide

  • Siin on hetktõmmis, mis näitab andmete väljavõtmist õpilase tabelist ilma andmete filtreerimiseta.

Cassandra Kui klausel

select * from University.Student;

Õpilase tabelist leitakse kaks kirjet.

  • Siin on hetktõmmis, mis näitab andmete väljavõtmist õpilasest andmete filtreerimisega. Otsitakse üks kirje.

Andmed filtreeritakse nime veeru järgi. Otsitakse kõik kirjed, mille nimi on võrdne Guru99-ga.

Cassandra Kui klausel

select * from University. Student where name='Guru99';