Cassandra Bahasa Kueri (CQL): Sisipkan Ke, Perbarui (Contoh)

Sisipkan Data

Cassandra masukkan pernyataan menulis data Cassandra kolom dalam bentuk baris. Cassandra masukkan kueri hanya akan menyimpan kolom yang diberikan oleh pengguna. Anda harus menentukan kolom kunci utama saja.

Tidak akan memakan ruang untuk nilai yang tidak diberikan. Tidak ada hasil yang dikembalikan setelah penyisipan.

Sintaksis

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

Example

Berikut cuplikan eksekusinya Cassandra Masukkan ke dalam kueri tabel yang akan memasukkan satu catatan ke dalamnya Cassandra tabel 'Siswa'.

Sisipkan Data

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

Setelah berhasil menjalankan perintah Sisipkan ke Cassandra, satu baris akan disisipkan ke dalam Cassandra tabel Mahasiswa dengan RollNo 2, Nama Michael, jurusan CS dan Semester 2.

Berikut adalah cuplikan status database saat ini.

Sisipkan Data

Masukkan Data

Cassandra tidak mengecewakan. Upsert maksudnya Cassandra akan menyisipkan baris jika kunci utama belum ada, sebaliknya jika kunci utama sudah ada, maka baris tersebut akan diperbarui.

Perbaharui data

Cassandra Update query digunakan untuk memperbarui data di Cassandra tabelJika tidak ada hasil yang ditampilkan setelah memperbarui data, berarti data berhasil diperbarui, jika tidak, kesalahan akan ditampilkan. Nilai kolom diubah dalam klausa 'Set' sementara data difilter dengan klausa 'Where'.

Sintaksis

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

Example

Berikut adalah screenshot yang menunjukkan status database sebelum melakukan update data.

Perbaharui data

Berikut cuplikan eksekusinya Cassandra Perintah update yang mengupdate record pada tabel Student.

Perbaharui data

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

Setelah berhasil mengeksekusi permintaan pembaruan di Cassandra 'Update Siswa', nama siswa akan diubah dari 'Clark' menjadi 'Hayden' yang memiliki rollno 1.

Berikut adalah screenshot yang menunjukkan status database setelah update data.

Perbaharui data

Cassandra Hapus Data

Perintah 'Hapus' menghapus seluruh baris atau beberapa kolom dari tabel Siswa. Ketika data dihapus, data tersebut tidak langsung dihapus dari tabel. Sebaliknya data yang dihapus ditandai dengan batu nisan dan dihapus setelah pemadatan.

Sintaksis

Delete from KeyspaceName.TableName
	Where ColumnName1=ColumnValue

Atas Cassandra sintaks hapus baris akan menghapus satu atau lebih baris tergantung pada penyaringan data di klausa mana.

Delete ColumnNames from KeyspaceName.TableName
	Where ColumnName1=ColumnValue

Sintaks di atas akan menghapus beberapa kolom dari tabel.

Example

Berikut adalah snapshot yang menunjukkan status database saat ini sebelum menghapus data.

Cassandra Hapus Data

Berikut adalah cuplikan dari perintah yang akan menghapus satu baris dari tabel Siswa.

Cassandra Hapus Data

Delete from University.Student where rollno=1;

Setelah eksekusi perintah CQL Delete berhasil, satu baris akan dihapus dari tabel Siswa dimana nilai rollno adalah 1.

Berikut adalah snapshot yang menunjukkan status database setelah data dihapus.

Cassandra Hapus Data

Apa Cassandra tidak mendukung

Ada beberapa batasan dalam Cassandra bahasa kueri (CQL).

  1. CQL tidak mendukung kueri agregasi seperti maks, min, rata-rata
  2. CQL tidak mendukung grup dengan mengajukan pertanyaan.
  3. CQL tidak mendukung bergabung.
  4. CQL tidak mendukung kueri OR.
  5. CQL tidak mendukung kueri wildcard.
  6. CQL tidak mendukung kueri Union, Intersection.
  7. Kolom tabel tidak dapat difilter tanpa membuat indeks.
  8. Kueri lebih besar dari (>) dan lebih kecil dari (<) hanya didukung pada kolom pengelompokan. Cassandra bahasa kueri tidak cocok untuk tujuan analitik karena memiliki banyak keterbatasan.

Cassandra Dimana klausul

In Cassandra, pengambilan data adalah masalah sensitif. Kolom disaring Cassandra dengan membuat indeks pada kolom non-kunci utama.

Sintaksis

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

Example

  • Berikut adalah cuplikan yang menunjukkan pengambilan data dari tabel Siswa tanpa penyaringan data.

Cassandra Dimana klausul

select * from University.Student;

Dua catatan diambil dari tabel Siswa.

  • Berikut adalah snapshot yang menunjukkan pengambilan data dari Student dengan penyaringan data. Satu catatan diambil.

Data disaring berdasarkan kolom nama. Semua catatan diambil yang memiliki nama sama dengan Guru99.

Cassandra Dimana klausul

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