Book Image

Learning Apache Cassandra

By : Matthew Brown
4 (1)
Book Image

Learning Apache Cassandra

4 (1)
By: Matthew Brown

Overview of this book

Table of Contents (19 chapters)
Learning Apache Cassandra
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Reversing the order of rows


We're on our way to building great data access logic for displaying a user's timeline of status updates. There's one minor problem though; if I'm viewing alice's status updates, I'm probably interested in reading her most recent ones first. So far, we've always gotten the status updates in ascending order of id, meaning the oldest ones come first. Fortunately, we've got a couple of ways to change this.

Reversing clustering order at query time

Using our existing user_status_updates table, we can instruct Cassandra to return results in reverse order of id:

SELECT "id", DATEOF("id"), "body"
FROM "user_status_updates"
WHERE "username" = 'alice'
ORDER BY "id" DESC;

This is the first time we've seen an ORDER BY in CQL, but it should be familiar to anyone who's worked with a SQL database: the DESC tells Cassandra that we want to order rows by descending values in the id column:

You might assume that the ORDER BY gives us a lot of flexibility in ordering rows—you might think...