class Sequel::SQL::Subscript

Represents an SQL array access, with multiple possible arguments.

Attributes

expression[R]

The SQL array column

f[R]

The SQL array column

sub[R]

The array of subscripts to use (should be an array of numbers)

Public Class Methods

new(expression, sub) click to toggle source

Set the array column and subscripts to the given arguments

     # File lib/sequel/sql.rb
1811 def initialize(expression, sub)
1812   @expression = expression
1813   @sub = sub
1814   freeze
1815 end

Public Instance Methods

[](sub) click to toggle source

Create a new Subscript by accessing a subarray of a multidimensional array.

Sequel[:a].sql_subscript(2) # a[2]
Sequel[:a].sql_subscript(2)[1] # a[2][1]
     # File lib/sequel/sql.rb
1831 def [](sub)
1832   Subscript.new(self, Array(sub))
1833 end
|(sub) click to toggle source

Create a new Subscript appending the given subscript(s) to the current array of subscripts.

Sequel[:a].sql_subscript(2) # a[2]
Sequel[:a].sql_subscript(2) | 1 # a[2, 1]
     # File lib/sequel/sql.rb
1822 def |(sub)
1823   Subscript.new(@expression, @sub + Array(sub))
1824 end