Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get current timestamp with CQL while using Command Line?

People also ask

How do I add a timestamp in CQL?

Inserting the current timestamp Use functions to insert the current date into date or timestamp fields as follows: Current date and time into timestamp field: toTimestamp(now()) sets the timestamp to the current time of the coordinator.

How is timestamp stored in Cassandra?

In Cassandra 3.4 and later, timestamps are displayed in cqlsh in sub-second precision by default, as shown below. Applications reading a timestamp may use the sub-second portion of the timestamp, as Cassandra stored millisecond-precision timestamps in all versions.


You can use the timeuuid functions now() and dateof() (or in later versions of Cassandra, toTimestamp()), e.g.,

INSERT INTO TEST (ID, NAME, VALUE, LAST_MODIFIED_DATE)
                  VALUES ('2', 'elephant',  'SOME_VALUE', dateof(now()));

The now function takes no arguments and generates a new unique timeuuid (at the time where the statement using it is executed). The dateOf function takes a timeuuid argument and extracts the embedded timestamp. (Taken from the CQL documentation on timeuuid functions).

Cassandra >= 2.2.0-rc2

dateof() was deprecated in Cassandra 2.2.0-rc2. For later versions you should replace its use with toTimestamp(), as follows:

INSERT INTO TEST (ID, NAME, VALUE, LAST_MODIFIED_DATE)
                  VALUES ('2', 'elephant',  'SOME_VALUE', toTimestamp(now()));

In new version of cassandra could use toTimestamp(now()), and note that function dateof is deprecated.

e.g

insert into dummy(id, name, size, create_date) values (1, 'Eric', 12, toTimestamp(now()));