Hi Mike AFAIK cassandra queries only on keys and not on column names, please verify.
On Tue, May 11, 2010 at 11:06 AM, Mike Malone <m...@simplegeo.com> wrote: > > > On Mon, May 10, 2010 at 9:00 PM, Shuge Lee <shuge....@gmail.com> wrote: >> >> Hi all: >> How to write WHERE ... LIKE query ? >> For examples(described in Python): >> Schema: >> # columnfamily name >> resources = [ >> # key >> 'foo': { >> # columns and value >> 'url': 'foo.com', >> 'pushlier': 'foo', >> }, >> 'oof': { >> 'url': 'oof.com', >> 'pushlier': 'off', >> }, >> # ... , >> } >> # this is very easy, >> SELECT * FROM KEY = 'foo' >> but following are really hard: >> SELECT * FROM resources WHERE key LIKE 'o%' # get all records which key >> name contains character 'o'? > > get_range_slices(<keyspace>, ColumnParent(column_family), > SlicePredicate(slice_range=SliceRange('',''), KeyRange('o', 'o~'), > ConsistencyLevel.ONE); > >> >> SELECT * FROM resources WHERE url == 'oof.com' > > This is a projection. Cassandra doesn't support this sort of query out of > the box. You'll have to structure your data so that data you want to query > by is in the key or column name. Or you'll have to manually build secondary > indexes. > > Mike >