Scylla Documentation Logo Documentation
  • Server
    • Scylla Open Source
    • Scylla Enterprise
    • Scylla Alternator
  • Cloud
    • Scylla Cloud
    • Scylla Cloud Docs
  • Tools
    • Scylla Manager
    • Scylla Monitoring Stack
    • Scylla Operator
  • Drivers
    • CQL Drivers
    • DynamoDB Drivers
Download
Menu
Scylla Dev Design Notes Scylla CQL extensions

Scylla CQL extensions¶

Scylla extends the CQL language to provide a few extra features. This document lists those extensions.

SCYLLA_TIMEUUID_LIST_INDEX function¶

The SCYLLA_TIMEUUID_LIST_INDEX function allows using the raw (sstable) collection key for lists, which is a timeuuid, as “index” when performing a modification.

The function is used to wrap the index part of a list assignment:

UPDATE ... SET list_column[SCYLLA_TIMEUUID_LIST_INDEX(:v1)] = :v2 ... 

It is only used by sstableloader.

SCYLLA_COUNTER_SHARD_LIST function¶

The SCYLLA_COUNTER_SHARD_LIST function allows setting a counter column value by its internal representation.

The function is used to wrap the value part of a counter assignment:

UPDATE ... SET counter_column = SCYLLA_COUNTER_SHARD_LIST(:v1) ... 

It is only used by sstableloader.

SCYLLA_CLUSTERING_BOUND function¶

The SCYLLA_CLUSTERING_BOUND function marks a query bound as being a CQL clustering boundary, not a value range bound as in normal CQL.

This function can be used on the right-hand side of a WHERE statement multicolumn comparison, excluding the IN and LIKE operators. Its parameters are values corresponding to the clustering prefix specified on the left-hand side of that comparison.

UPDATE ... WHERE (c1, c2) < SCYLLA_CLUSTERING_BOUND(:v1, :v2) AND (c1, c2) > SCYLLA_CLUSTERING_BOUND(:v3, :v4) ...

It is only used by sstableloader.

PREVIOUS
Scylla CQL extensions
NEXT
CQL3 Type Mapping
  • 4.6
    • 4.6
    • 4.5
  • Scylla Developer Documentation
  • Alternator: DynamoDB API in Scylla
    • Getting Started With ScyllaDB Alternator
    • Scylla Alternator for DynamoDB users
  • Design Notes
    • IDL compiler
    • CDC
    • The Compaction Controller
    • Scylla CQL extensions
    • Scylla CQL extensions
    • CQL3 Type Mapping
    • Hinted Handoff Design
    • Performance Isolation in Scylla
    • CQL to Lua type mapping
    • Scylla Metrics
    • Migrating from users to roles
    • Paged queries
    • Protocol extensions to the Cassandra Native Protocol
    • Ports and protocols in Scylla
    • Redis API in Scylla
    • Repair based node operations
    • Reverse reads
    • Row Cache
    • Row level repair
    • Secondary indexes in Scylla
    • File format of the Scylla.db sstable component
    • sstables directory structure
    • System keyspace layout
    • System schema keyspace layout
    • WASM support for user-defined functions
  • Guides
    • Guidelines for developing Scylla
    • Scylla RESTful API V2
    • Building Scylla
    • Debugging with GDB
    • Docker Hub Image
    • Logging in Scylla
    • Testing
    • Tracing
  • Contribute
    • Contributing to Scylla
    • Backport
    • Maintainer’s handbook
    • Review Checklist
  • Service Level Distributed Data
  • Create an issue
  • Edit this page

On this page

  • Scylla CQL extensions
    • SCYLLA_TIMEUUID_LIST_INDEX function
    • SCYLLA_COUNTER_SHARD_LIST function
    • SCYLLA_CLUSTERING_BOUND function
Logo
Docs Contact Us About Us
Mail List Icon Slack Icon
© 2022, ScyllaDB. All rights reserved.
Last updated on 12 May 2022.
Powered by Sphinx 4.3.2 & ScyllaDB Theme 1.2.1