Class: ClickhouseRuby::ActiveRecord::ArelVisitor
- Inherits:
-
Arel::Visitors::ToSql
- Object
- Arel::Visitors::ToSql
- ClickhouseRuby::ActiveRecord::ArelVisitor
- Defined in:
- lib/clickhouse_ruby/active_record/arel_visitor.rb
Overview
Custom Arel visitor for generating ClickHouse-specific SQL
ClickHouse has unique requirements for certain SQL operations:
-
DELETE: Uses ALTER TABLE … DELETE WHERE syntax
-
UPDATE: Uses ALTER TABLE … UPDATE … WHERE syntax
-
LIMIT: Must come after ORDER BY
-
No OFFSET without LIMIT (use LIMIT n, m syntax)
Instance Method Summary collapse
-
#initialize(connection) ⇒ ArelVisitor
constructor
Initialize the visitor.
Constructor Details
#initialize(connection) ⇒ ArelVisitor
Initialize the visitor
27 28 29 30 |
# File 'lib/clickhouse_ruby/active_record/arel_visitor.rb', line 27 def initialize(connection) super(connection) @connection = connection end |