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'.
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.
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.
Berikut cuplikan eksekusinya Cassandra Perintah update yang mengupdate record pada tabel Student.
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.
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.
Berikut adalah cuplikan dari perintah yang akan menghapus satu baris dari tabel Siswa.
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.
Apa Cassandra tidak mendukung
Ada beberapa batasan dalam Cassandra bahasa kueri (CQL).
- CQL tidak mendukung kueri agregasi seperti maks, min, rata-rata
- CQL tidak mendukung grup dengan mengajukan pertanyaan.
- CQL tidak mendukung bergabung.
- CQL tidak mendukung kueri OR.
- CQL tidak mendukung kueri wildcard.
- CQL tidak mendukung kueri Union, Intersection.
- Kolom tabel tidak dapat difilter tanpa membuat indeks.
- 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.
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.
select * from University. Student where name='Guru99';