Unfollowing users
It's conceivable that bob
may end up posting too many funny cat pictures for alice
's taste, in which case, she may decide to unfollow him. For alice
to do that, we'll need to remove the rows representing the follow relationship from both the inbound and outbound follow tables:
DELETE FROM "user_outbound_follows" WHERE "follower_username" = 'alice' AND "followed_username" = 'bob'; DELETE FROM "user_inbound_follows" WHERE "followed_username" = 'bob' AND "follower_username" = 'alice';
This is our first encounter with CQL's DELETE
statement, although it should look quite familiar to anyone who's worked with SQL. To delete a row, we specify the full primary key of the row, which is to say both the partition key(s) and the clustering column(s). The WHERE…AND
syntax is the same as that used in SELECT
queries, introduced in Chapter 3, Organizing Related Data.
To check the effects of the deletion, we can query again for the list of users alice
follows:
SELECT "followed_username...