Pengguna anonim
Lebih
Bagaimana untuk mendapatkan cap waktu saat ini dengan CQL saat menggunakan Command Line?
Saya mencoba untuk memasukkan ke saya CQL tabel dari baris perintah. Saya mampu untuk memasukkan segala sesuatu. Tapi saya bertanya-tanya jika saya memiliki kolom timestamp, maka bagaimana saya bisa memasukkan ke kolom timestamp dari command line? Pada dasarnya, saya ingin menyisipkan cap waktu saat ini setiap kali saya memasukkan ke saya CQL meja -
Saat ini, saya hardcoding timestamp setiap kali saya memasukkan ke saya di bawah ini CQL meja -
CREATE TABLE TEST (ID TEXT, NAME TEXT, VALUE TEXT, LAST_MODIFIED_DATE TIMESTAMP, PRIMARY KEY (ID));
INSERT INTO TEST (ID, NAME, VALUE, LAST_MODIFIED_DATE) VALUES ('1', 'elephant', 'SOME_VALUE', 1382655211694);
Apakah ada cara untuk mendapatkan cap waktu saat ini menggunakan beberapa fungsi yang telah ditetapkan dalam CQL sehingga saat memasukkan ke dalam tabel di atas, saya dapat menggunakan metode itu untuk mendapatkan cap waktu saat ini dan kemudian masukkan ke dalam tabel di atas?
53
2
Anda dapat menggunakan timeuuid fungsi
now()
dandateof()
(atau versi yang lebih baru dari Cassandra,toTimestamp()
), misalnya,Masa
sekarang
fungsi tidak mengambil argumen dan menghasilkan baru yang unik timeuuid (pada saat mana pernyataan menggunakan dijalankan). ThedateOf
fungsi mengambil timeuuid argumen dan ekstrak tertanam timestamp. (Diambil dari CQL dokumentasi pada timeuuid fungsi).Cassandra >= 2.2.0-rc2
dateof()
dipensiunkan dalam Cassandra 2.2.0-rc2. Untuk versi yang lebih baru, anda harus mengganti penggunaannya dengantoTimestamp()
, sebagai berikut:Dalam versi baru dari
cassandra
bisa pakaitoTimestamp(now())
, dan perhatikan bahwa fungsidateof
adalah usang.e.g