· 9 years ago · Jan 18, 2017, 11:42 AM
1DROP KEYSPACE IF EXISTS db;
2CREATE KEYSPACE IF NOT EXISTS db WITH replication = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
3
4DROP TABLE IF EXISTS db.test;
5CREATE TABLE IF NOT EXISTS db.test (
6 user_id INT,
7 year_id INT,
8 month_id INT,
9 name TEXT,
10 PRIMARY KEY ((user_id), year_id, month_id)
11) WITH CLUSTERING ORDER BY (year_id asc, month_id ASC);
12
13INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2000, 8, 'august 2000') IF NOT exists;
14INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2000, 9, 'september 2000') IF NOT exists;
15INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2000, 10, 'october 2000') IF NOT exists;
16INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2000, 11, 'november 2000') IF NOT exists;
17INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2000, 12, 'december 2000') IF NOT exists;
18INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2001, 1, 'january 2001') IF NOT exists;
19INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2001, 2, 'february 2001') IF NOT exists;
20INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2001, 3, 'march 2001') IF NOT exists;
21INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2001, 4, 'april 2001') IF NOT exists;
22INSERT INTO db.test (user_id, year_id, month_id, name) VALUES (1, 2001, 5, 'may 2001') IF NOT exists;
23
24SELECT * FROM db.test where user_id = 1 and (year_id, month_id) >= (2000, 11) and (year_id, month_id) <= (2001, 3) ALLOW FILTERING;