Cassandra Język zapytań (CQL): Wstaw do, aktualizacja (przykład)

Wstaw dane

Cassandra instrukcja wstaw zapisuje dane Cassandra kolumny w formie wierszy. Cassandra zapytanie wstawiające zapisze tylko te kolumny, które podał użytkownik. Musisz koniecznie określić tylko kolumnę klucza podstawowego.

Nie zajmie miejsca na nie podane wartości. Po wstawieniu nie są zwracane żadne wyniki.

Składnia

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

Przykład

Oto migawka wykonanego Cassandra Wstaw do tabeli zapytanie, które wstawi jeden rekord Cassandra tabela „Student”.

Wstaw dane

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

Po pomyślnym wykonaniu polecenia Wstaw do Cassandra, jeden wiersz zostanie wstawiony do Cassandra tabela Student z rolką nr 2, imieniem Michael, dział CS i semestr 2.

Oto migawka bieżącego stanu bazy danych.

Wstaw dane

Wstaw dane

Cassandra podnosi. Upsert to oznacza Cassandra wstawi wiersz, jeśli klucz podstawowy jeszcze nie istnieje; w przeciwnym razie, jeśli klucz podstawowy już istnieje, wiersz zostanie zaktualizowany.

Aktualizować dane

Cassandra Zapytanie aktualizacyjne służy do aktualizacji danych w pliku Cassandra stół. Jeśli po zaktualizowaniu danych nie zostaną zwrócone żadne wyniki, oznacza to, że dane zostały pomyślnie zaktualizowane, w przeciwnym razie zostanie zwrócony błąd. Wartości kolumn są zmieniane w klauzuli „Set”, podczas gdy dane są filtrowane za pomocą klauzuli „Where”.

Składnia

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

Przykład

Oto zrzut ekranu przedstawiający stan bazy danych przed aktualizacją danych.

Aktualizować dane

Oto migawka wykonanego Cassandra Polecenie aktualizacji aktualizujące rekord w tabeli Student.

Aktualizować dane

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

Po pomyślnym wykonaniu zapytania aktualizacyjnego w Cassandra „Aktualizuj ucznia”, imię i nazwisko ucznia zostanie zmienione z „Clark” na „Hayden”, którego rolka ma numer 1.

Oto zrzut ekranu przedstawiający stan bazy danych po aktualizacji danych.

Aktualizować dane

Cassandra Usunąć dane

Polecenie „Usuń” usuwa cały wiersz lub niektóre kolumny z tabeli Student. Usunięte dane nie są natychmiast usuwane z tabeli. Zamiast tego usunięte dane są oznaczane nagrobkiem i usuwane po zagęszczeniu.

Składnia

Delete from KeyspaceName.TableName
	Where ColumnName1=ColumnValue

Powyżej Cassandra Składnia usuwania wierszy usunie jeden lub więcej wierszy, w zależności od filtrowania danych w klauzuli Where.

Delete ColumnNames from KeyspaceName.TableName
	Where ColumnName1=ColumnValue

Powyższa składnia spowoduje usunięcie niektórych kolumn z tabeli.

Przykład

Oto migawka pokazująca bieżący stan bazy danych przed usunięciem danych.

Cassandra Usunąć dane

Oto migawka polecenia, które usunie jeden wiersz z tabeli Student.

Cassandra Usunąć dane

Delete from University.Student where rollno=1;

Po pomyślnym wykonaniu polecenia CQL Delete, z tabeli Student, w której wartość rollno wynosi 1, zostanie usunięty jeden wiersz.

Oto migawka pokazująca stan bazy danych po usunięciu danych.

Cassandra Usunąć dane

Co Cassandra nie wspiera

Istnieją następujące ograniczenia w Cassandra język zapytań (CQL).

  1. CQL nie obsługuje zapytań agregujących, takich jak maks., min., śr.
  2. CQL nie obsługuje grupowania poprzez zapytania.
  3. CQL nie obsługuje złączeń.
  4. CQL nie obsługuje zapytań OR.
  5. CQL nie obsługuje zapytań ze znakami wieloznacznymi.
  6. CQL nie obsługuje zapytań Union, Intersection.
  7. Kolumn tabeli nie można filtrować bez utworzenia indeksu.
  8. Zapytanie większe niż (>) i mniejsze niż (<) jest obsługiwane tylko w przypadku kolumn klastrowanych. Cassandra język zapytań nie nadaje się do celów analitycznych, ponieważ ma wiele ograniczeń.

Cassandra Gdzie klauzula

In Cassandra, pobieranie danych jest kwestią delikatną. Kolumna jest filtrowana Cassandra tworząc indeks dla kolumn innych niż klucz podstawowy.

Składnia

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

Przykład

  • Oto migawka pokazująca pobieranie danych z tabeli Studenta bez filtrowania danych.

Cassandra Gdzie klauzula

select * from University.Student;

Z tabeli Studenta pobierane są dwa rekordy.

  • Oto migawka pokazująca pobieranie danych od Studenta z filtracją danych. Pobrano jeden rekord.

Dane są filtrowane według kolumny nazwy. Pobierane są wszystkie rekordy o nazwie równej Guru99.

Cassandra Gdzie klauzula

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

Podsumuj ten post następująco: