Qore SqlUtil Module Reference  1.7.5
SqlUtil Namespace Reference

Qore AbstractNumericDataType class definition. More...

Classes

class  AbstractCheckConstraint
 abstract class for check constraints More...
 
class  AbstractColumn
 the base class for column information More...
 
class  AbstractColumnConstraint
 the API for a constraint with columns More...
 
class  AbstractColumnSupportingConstraint
 the API for a constraint with columns More...
 
class  AbstractConstraint
 abstract base class for constraints More...
 
class  AbstractDdlObject
 the base class for named objects More...
 
class  AbstractForeignConstraint
 the base class for foreign key constraint information More...
 
class  AbstractFunction
 base class for functions More...
 
class  AbstractFunctionBase
 base class for function or objects with code More...
 
class  AbstractHashContainer
 abstract container class that throws an exception if an unknown key is accessed More...
 
class  AbstractIndex
 the abstract base class for index information More...
 
class  AbstractListContainer
 abstract container class that throws an exception if an unknown key is accessed More...
 
class  AbstractNumericDataType
 the data type for Oracle NUMBER columns More...
 
class  AbstractPrimaryKey
 represents a primary key More...
 
class  AbstractSavepointHelper
 Abstract base class for savepoint helpers for epheremal transaction support. More...
 
class  AbstractSequence
 base class for sequences More...
 
class  AbstractSqlUtilBase
 base class for abstract SqlUtil classes More...
 
class  AbstractTable
 the base abstract class for the table implementation More...
 
class  AbstractTrigger
 the base class for triggers More...
 
class  AbstractUniqueConstraint
 represents a unique column constraint More...
 
class  AbstractView
 base class for views More...
 
hashdecl  ColumnOperatorInfo
 column operator info hash as returned by all column operator functions More...
 
class  Columns
 column container class that throws an exception if an unknown column is accessed More...
 
class  Constraints
 constraint container class that throws an exception if an unknown constraint is accessed More...
 
class  Database
 represents a database; this class embeds an AbstractDatabase object that is created automatically in the constructor based on the database driver for the AbstractDatasource object providing the database connection More...
 
class  ForeignConstraints
 foreign constraint container class that throws an exception if an unknown constraint is accessed More...
 
class  ForeignConstraintTarget
 a class describing a foreign constraint target More...
 
class  Functions
 function container class that throws an exception if an unknown function is accessed More...
 
hashdecl  GenericColumnInfo
 generic column description hash in schema descriptions More...
 
class  Indexes
 index container class that throws an exception if an unknown index is accessed More...
 
hashdecl  InsertOperatorInfo
 insert operator info hash as returned by all insert operator functions More...
 
hashdecl  JoinOperatorInfo
 join operator info hash as returned by all join operator functions More...
 
hashdecl  OperatorInfo
 SQL operator info hash as returned by all operator functions. More...
 
hashdecl  SqlCommandInfo
 A hash describing SQL and arguments for an SQL DML command. More...
 
hashdecl  SqlResultInfo
 Return type for methods that return a result and also SQL info. More...
 
class  SqlUtilColumnDataType
 generic type for SQL datatypes where no translations are provided for NULL for "or nothing" types More...
 
class  SqlUtilColumnField
 SqlUtil column field class. More...
 
hashdecl  SqlUtilDataTypeOptionInfo
 column data type options More...
 
class  SqlUtilDateType
 type for date / timestamp columns More...
 
class  SqlUtilDbSpecificDataType
 data type for DB-specific types that are not convertible to other types More...
 
class  SqlUtilFloatType
 type for date / timestamp columns More...
 
class  SqlUtilIntType
 type for date / timestamp columns More...
 
class  SqlUtilStringType
 type for string / varchar / char columns More...
 
class  Table
 represents a database table; this class embeds an AbstractTable object that is created automatically in the constructor based on the database driver for the AbstractDatasource object providing the database connection More...
 
class  Tables
 the table container class stores a collection of tables in a schema More...
 
class  Triggers
 trigger container class that throws an exception if an unknown trigger is accessed More...
 
hashdecl  UpdateOperatorInfo
 update operator info hash as returned by all update operator functions More...
 

Functions

hash< ColumnOperatorInfocop_append (auto column, string arg)
 returns a ColumnOperatorInfo hash for the "append" operator with the given argument More...
 
hash< ColumnOperatorInfocop_as (auto column, string arg)
 returns a ColumnOperatorInfo hash for the "as" operator with the given argument More...
 
hash< ColumnOperatorInfocop_avg (auto column)
 returns a ColumnOperatorInfo hash for the "avg" operator; returns average column values More...
 
hash< ColumnOperatorInfocop_cast (auto column, string arg, auto arg1, auto arg2)
 returns a ColumnOperatorInfo hash for the "cast" operator with the given argument(s) More...
 
hash< ColumnOperatorInfocop_coalesce (auto col1, auto col2)
 returns a ColumnOperatorInfo hash for the "coalesce" operator with the given column arguments; the first non-NULL column value will be returned More...
 
hash< ColumnOperatorInfocop_count (auto column='')
 returns a ColumnOperatorInfo hash for the "count" operator; returns row counts More...
 
hash< ColumnOperatorInfocop_cume_dist ()
 Analytic/window function: relative rank of the current row. More...
 
hash< ColumnOperatorInfocop_dense_rank ()
 Analytic/window function: rank of the current row without gaps. More...
 
hash< ColumnOperatorInfocop_distinct (auto column)
 returns a ColumnOperatorInfo hash for the "distinct" operator with the given argument; returns distinct column values More...
 
hash< ColumnOperatorInfocop_divide (auto column1, auto column2)
 returns a ColumnOperatorInfo hash for the "/" operator with the given arguments More...
 
hash< ColumnOperatorInfocop_first_value (any column)
 Analytic/window function: value evaluated at the row that is the first row of the window frame. More...
 
hash< ColumnOperatorInfocop_last_value (any column)
 Analytic/window function: value evaluated at the row that is the last row of the window frame. More...
 
hash< ColumnOperatorInfocop_length (auto column)
 returns a ColumnOperatorInfo hash for the "len" operator with the given argument; returns the length of the given text field More...
 
hash< ColumnOperatorInfocop_lower (auto column)
 returns a ColumnOperatorInfo hash for the "lower" operator with the given argument; returns a column value in lower case More...
 
hash< ColumnOperatorInfocop_max (auto column)
 returns a ColumnOperatorInfo hash for the "max" operator; returns maximum column values More...
 
hash< ColumnOperatorInfocop_min (auto column)
 returns a ColumnOperatorInfo hash for the "min" operator; returns minimum column values More...
 
hash< ColumnOperatorInfocop_minus (auto column1, auto column2)
 returns a ColumnOperatorInfo hash for the "-" operator with the given arguments More...
 
hash< ColumnOperatorInfocop_multiply (auto column1, auto column2)
 returns a ColumnOperatorInfo hash for the "*" operator with the given arguments More...
 
hash< ColumnOperatorInfocop_ntile (int value)
 Analytic/window function: integer ranging from 1 to the argument value, dividing the partition as equally as possible. More...
 
hash< ColumnOperatorInfocop_over (auto column, *string partitionby, *string orderby)
 returns a ColumnOperatorInfo hash for the "over" clause More...
 
hash< ColumnOperatorInfocop_percent_rank ()
 Analytic/window function: relative rank of the current row. More...
 
hash< ColumnOperatorInfocop_plus (auto column1, auto column2)
 returns a ColumnOperatorInfo hash for the "+" operator with the given arguments More...
 
hash< ColumnOperatorInfocop_prepend (auto column, string arg)
 returns a ColumnOperatorInfo hash for the "prepend" operator with the given argument More...
 
hash< ColumnOperatorInfocop_rank ()
 Analytic/window function: rank of the current row with gaps. More...
 
hash< ColumnOperatorInfocop_row_number ()
 Analytic/window function: number of the current row within its partition, counting from 1. More...
 
hash< ColumnOperatorInfocop_seq (string seq, *string as)
 returns a ColumnOperatorInfo hash for the "seq" operator with the given argument giving the sequence name whose value should be returned More...
 
hash< ColumnOperatorInfocop_seq_currval (string seq, *string as)
 returns a ColumnOperatorInfo hash for the "seq_currval" operator with the given argument giving the sequence name whose current value should be returned More...
 
hash< ColumnOperatorInfocop_substr (auto column, int start, *int count)
 returns a ColumnOperatorInfo hash for the "substr" operator with the given arguments; returns a substring of a column value More...
 
hash< ColumnOperatorInfocop_sum (auto column)
 returns a ColumnOperatorInfo hash for the "sum" operator; returns the total sum of a numeric column. More...
 
hash< ColumnOperatorInfocop_trunc_date (auto column, string mask)
 Truncates a date column or value regarding the given mask. The resulting value remains Qore::date (no conversion to eg. string) More...
 
hash< ColumnOperatorInfocop_upper (auto column)
 returns a ColumnOperatorInfo hash for the "upper" operator with the given argument; returns a column value in upper case More...
 
hash< ColumnOperatorInfocop_value (auto arg)
 returns a ColumnOperatorInfo hash for the "value" (literal) operator with the given argument More...
 
hash< ColumnOperatorInfocop_year (auto column)
 returns a ColumnOperatorInfo hash for the "year" operator with the given argument More...
 
hash< ColumnOperatorInfocop_year_day (auto column)
 returns a ColumnOperatorInfo hash for the "year_day" operator with the given argument More...
 
hash< ColumnOperatorInfocop_year_hour (auto column)
 returns a ColumnOperatorInfo hash for the "year_hour" operator with the given argument More...
 
hash< ColumnOperatorInfocop_year_month (auto column)
 returns a ColumnOperatorInfo hash for the "year_month" operator with the given argument More...
 
hash< InsertOperatorInfoiop_seq (string arg)
 returns an InsertOperatorInfo hash for retrieving the value of the given sequence in insert queries More...
 
hash< InsertOperatorInfoiop_seq_currval (string arg)
 returns an InsertOperatorInfo hash for retrieving the current value of the given sequence in insert queries More...
 
hash< string, hash< JoinOperatorInfo > > join_inner (AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for standard inner joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_inner (string ta, AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for standard inner joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< string, hash< JoinOperatorInfo > > join_inner (string ta, Table table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for standard inner joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< string, hash< JoinOperatorInfo > > join_inner (string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for standard inner joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_inner (Table table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for standard inner joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_inner_alias (string ta, string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for standard inner joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< string, hash< JoinOperatorInfo > > join_left (AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for left outer joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_left (string ta, AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for left outer joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< string, hash< JoinOperatorInfo > > join_left (string ta, Table table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for left outer joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< string, hash< JoinOperatorInfo > > join_left (string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for left outer joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_left (Table table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for left outer joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_left_alias (string ta, string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for left outer joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< string, hash< JoinOperatorInfo > > join_right (AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for right outer joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_right (string ta, AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for right outer joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< string, hash< JoinOperatorInfo > > join_right (string ta, Table table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for right outer joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< string, hash< JoinOperatorInfo > > join_right (string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for right outer joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_right (Table table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for right outer joins with the given arguments More...
 
hash< string, hash< JoinOperatorInfo > > join_right_alias (string ta, string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
 returns a hash for right outer joins with the given arguments for use when joining with a table other than the primary table More...
 
hash< ColumnOperatorInfomake_cop (string cop, auto column, auto arg)
 returns a ColumnOperatorInfo hash More...
 
hash< InsertOperatorInfomake_iop (string iop, auto arg)
 returns an InsertOperatorInfo hash More...
 
hash< string, hash< JoinOperatorInfo > > make_jop (string jop, AbstractTable table, *string alias, *hash jcols, *hash cond, *string ta, *hash< auto > opt)
 returns hash keyed with the table name assigned to a JoinOperatorInfo hash More...
 
hash< string, hash< JoinOperatorInfo > > make_jop (string jop, string table_name, *string alias, *hash jcols, *hash cond, *string ta, *hash< auto > opt)
 returns a hash keyed with the table name assigned to a JoinOperatorInfo hash More...
 
hash< OperatorInfomake_op (string op, auto arg)
 returns an OperatorInfo hash
 
hash< UpdateOperatorInfomake_uop (string uop, auto arg, *hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash More...
 
hash< OperatorInfoop_between (auto l, auto r)
 returns an OperatorInfo hash for the "between" operator with the given arguments, neither of which can be NULL or NOTHING; for use in where clauses More...
 
hash< OperatorInfoop_ceq (string arg)
 returns an OperatorInfo hash for the "=" operator with the given argument for use in where clauses when comparing the values of two columns More...
 
hash< OperatorInfoop_cge (string arg)
 returns an OperatorInfo hash for the ">=" operator with the given argument for use in where clauses when comparing the values of two columns More...
 
hash< OperatorInfoop_cgt (string arg)
 returns an OperatorInfo hash for the ">" operator with the given argument for use in where clauses when comparing the values of two columns More...
 
hash< OperatorInfoop_cle (string arg)
 returns an OperatorInfo hash for the "<=" operator with the given argument for use in where clauses when comparing the values of two columns More...
 
hash< OperatorInfoop_clt (string arg)
 returns an OperatorInfo hash for the "<" operator with the given argument for use in where clauses when comparing the values of two columns More...
 
hash< OperatorInfoop_cne (string arg)
 returns an OperatorInfo hash for the "!=" or "<>" operator with the given argument for use in where clauses when comparing the values of two columns More...
 
hash< OperatorInfoop_eq (auto arg)
 returns an OperatorInfo hash for the "=" operator with the given argument for use in where clauses when comparing column values to immediate values More...
 
hash< OperatorInfoop_ge (auto arg)
 returns an OperatorInfo hash for the ">=" operator with the given argument for use in where clauses when comparing column values to immediate values More...
 
hash< OperatorInfoop_gt (auto arg)
 returns an OperatorInfo hash for the ">" operator with the given argument for use in where clauses when comparing column values to immediate values More...
 
hash< OperatorInfoop_in ()
 returns an OperatorInfo hash for the "in" operator with all arguments passed to the function; for use in where clauses More...
 
hash< OperatorInfoop_in (list< auto > args)
 returns an OperatorInfo hash for the "in" operator with the given argument list as the first argument; for use in where clauses More...
 
hash< OperatorInfoop_in_select (AbstractTable table, hash< auto > select_hash)
 returns an OperatorInfo hash for the "in" operator with a subquery as the argument; for use in where clauses More...
 
hash< OperatorInfoop_in_select (string table, hash< auto > select_hash)
 returns an OperatorInfo hash for the "in" operator with a subquery as the argument; for use in where clauses More...
 
hash< OperatorInfoop_in_select (Table table, hash< auto > select_hash)
 returns an OperatorInfo hash for the "in" operator with a subquery as the argument; for use in where clauses More...
 
hash< OperatorInfoop_le (auto arg)
 returns an OperatorInfo hash for the "<=" operator with the given argument for use in where clauses when comparing column values to immediate values More...
 
hash< OperatorInfoop_like (string str)
 returns an OperatorInfo hash for the "like" operator with the given argument for use in where clauses More...
 
hash< OperatorInfoop_lt (auto arg)
 returns an OperatorInfo hash for the "<" operator with the given argument for use in where clauses when comparing column values to immediate values More...
 
hash< OperatorInfoop_ne (auto arg)
 returns an OperatorInfo hash for the "!=" or "<>" operator with the given argument for use in where clauses when comparing column values to immediate values More...
 
hash< OperatorInfoop_not (hash arg)
 returns an OperatorInfo hash for the "not" operator; for use in where clauses More...
 
hash< OperatorInfoop_substr (int start, *int count, string text)
 returns an OperatorInfo hash for the "substr" operator with the given arguments; for use in where clauses More...
 
hash< OperatorInfoop_substr (int start, string text)
 returns an OperatorInfo hash for the "substr" operator with the given arguments; for use in where clauses More...
 
 sqlutil_register_ds_deserializer (*code new_ds_get)
 registers a closure or call reference taking a string type and string datasource configuration that will return an AbstractDatasource
 
 sqlutil_register_ds_serializer (*code new_ds_do)
 registers a closure or call reference taking a string type and string datasource configuration that will return an AbstractDatasource
 
hash< UpdateOperatorInfouop_append (string arg, *hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "append" or concatenate operator with the given argument More...
 
hash< UpdateOperatorInfouop_divide (auto arg, *hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "/" operator with the given arguments More...
 
hash< UpdateOperatorInfouop_lower (*hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "lower" operator with the given argument; returns a column value in lower case More...
 
hash< UpdateOperatorInfouop_minus (auto arg, *hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "-" operator with the given arguments More...
 
hash< UpdateOperatorInfouop_multiply (auto arg, *hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "*" operator with the given arguments More...
 
hash< UpdateOperatorInfouop_plus (auto arg, *hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "+" operator with the given arguments More...
 
hash< UpdateOperatorInfouop_prepend (string arg, *hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "prepend" operator with the given argument More...
 
hash< UpdateOperatorInfouop_seq (string seq)
 returns an UpdateOperatorInfo hash for the "seq" operator with the given argument giving the sequence name whose value should be returned More...
 
hash< UpdateOperatorInfouop_seq_currval (string seq)
 returns an UpdateOperatorInfo hash for the "seq" operator with the given argument giving the sequence name whose current value should be returned More...
 
hash< UpdateOperatorInfouop_substr (int start, *int count, *hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "substr" operator with the given arguments; returns a substring of a column value More...
 
hash< UpdateOperatorInfouop_upper (*hash< UpdateOperatorInfo > nest)
 returns an UpdateOperatorInfo hash for the "upper" operator with the given argument; returns a column value in upper case More...
 
hash< string, hash< OperatorInfo > > wop_or (hash h1, hash h2)
 returns an OperatorInfo hash with a fake "_OR_" column name; the list of arguments to the function is combined such that each hash in the list generates SQL expressions combined with "and" logic, and each of those clauses is combined with "or" logic; this is for use in where clauses More...
 

Variables

const BLOB = "blob"
 specifies a large variable-length binary column (ie BLOB or BYTEA, etc)
 
const CHAR = "char"
 specifies a CHAR column
 
const CLOB = "clob"
 specifies a large variable-length character column (ie CLOB or TEXT, etc)
 
const COP_APPEND = "append"
 to append a string to a column on output More...
 
const COP_AS = "as"
 to rename a column on output More...
 
const COP_AVG = "avg"
 to return the average value More...
 
const COP_CAST = "cast"
 to convert column value into another datatype More...
 
const COP_COALESCE = "coalesce"
 to return the first non-null argument in the list More...
 
const COP_COUNT = "count"
 to return the row count More...
 
const COP_CUME_DIST = "cume_dist"
 Analytic (window) function: CUME_DIST. More...
 
const COP_DENSE_RANK = "dense_rank"
 Analytic (window) function: DENSE_RANK. More...
 
const COP_DISTINCT = "distinct"
 to return distinct values More...
 
const COP_DIVIDE = "divide"
 the SQL "divide" operator More...
 
const COP_FIRST_VALUE = "first_value"
 Analytic (window) function: FIRST_VALUE. More...
 
const COP_LAST_VALUE = "last_value"
 Analytic (window) function: LAST_VALUE. More...
 
const COP_LENGTH = "length"
 to get the length of a text field More...
 
const COP_LOWER = "lower"
 to return column value in lower case More...
 
const COP_MAX = "max"
 to return the maximum value More...
 
const COP_MIN = "min"
 to return the minimum value More...
 
const COP_MINUS = "minus"
 the SQL "minus" operator More...
 
const COP_MULTIPLY = "multiply"
 the SQL "multiply" operator More...
 
const COP_NTILE = "ntile"
 Analytic (window) function: NTILE. More...
 
const COP_OVER = "over"
 the SQL "over" clause More...
 
const COP_PERCENT_RANK = "percent_rank"
 Analytic (window) function: PERCENT_RANK. More...
 
const COP_PLUS = "plus"
 the SQL "plus" operator More...
 
const COP_PREPEND = "prepend"
 to prepend a string to a column on output More...
 
const COP_RANK = "rank"
 Analytic (window) function: RANK. More...
 
const COP_ROW_NUMBER = "row_number"
 Analytic (window) function: ROW_NUMBER. More...
 
const COP_SEQ = "seq"
 to return the next value of a sequence More...
 
const COP_SEQ_CURRVAL = "seq_currval"
 to return the last value of a sequence issued in the same session More...
 
const COP_SUBSTR = "substr"
 to extract a substring from a column More...
 
const COP_SUM = "sum"
 to return the sum value More...
 
const COP_TRUNC_DATE = "truncate_date"
 to return the date with truncated value More...
 
const COP_UPPER = "upper"
 to return column value in upper case More...
 
const COP_VALUE = "value"
 to append a constant value (SQL Literal) to use as an output column value More...
 
const COP_YEAR = "year"
 to return a date value with year information only More...
 
const COP_YEAR_DAY = "year_day"
 to return a date value with year to day information More...
 
const COP_YEAR_HOUR = "year_hour"
 to return a date value with year to hextern information More...
 
const COP_YEAR_MONTH = "year_month"
 to return a date value with year to month information More...
 
const DB_FUNCTIONS = "functions"
 Features constants. More...
 
const DB_MVIEWS = "materialized views"
 Feature: materialized views / snapshots.
 
const DB_PACKAGES = "packages"
 Feature: packages.
 
const DB_PROCEDURES = "procedures"
 Feature: procedures.
 
const DB_SEQUENCES = "sequences"
 Feature: sequences.
 
const DB_SYNONYMS = "synonyms"
 Feature: synonyms.
 
const DB_TABLES = "tables"
 Feature: tables.
 
const DB_TYPES = "named types"
 Feature: named types.
 
const DB_VIEWS = "views"
 Feature: views.
 
const DefaultCopMap = ...
 a hash of default column operator descriptions
 
const DefaultIopMap = {}
 a hash of default insert operator descriptions (currently empty, all operators are driver-dependent)
 
const DefaultOpMap = ...
 a hash of valid operators for use in Where Clauses
 
const DefaultUopMap = ...
 a hash of valid update operators
 
const DT_DAY = "D"
 Format unit: day.
 
const DT_HOUR = "H"
 Format unit: hour.
 
const DT_MINUTE = "m"
 Format unit: minute.
 
const DT_MONTH = "M"
 Format unit: month.
 
const DT_SECOND = "S"
 Format unit: hour.
 
const DT_YEAR = "Y"
 Format unit: year.
 
const IOP_SEQ = "seq"
 for using the value of a sequence More...
 
const IOP_SEQ_CURRVAL = "seq_currval"
 for using the last value of a sequence issued in the current session More...
 
const JOP_INNER = "inner"
 for standard inner joins More...
 
const JOP_LEFT = "left"
 for left outer joins More...
 
const JOP_RIGHT = "right"
 for right outer joins More...
 
const JopMap = ...
 a hash of valid join operators
 
const NUMERIC = "number"
 specifies a numeric column (equivalent to Qore::Type::Number)
 
const OP_BETWEEN = "between"
 the SQL "between" operator for use in Where Clauses More...
 
const OP_CEQ = "C="
 the SQL equals operator (=) for use in Where Clauses More...
 
const OP_CGE = "C>="
 the SQL greater than or equals operator (>=) for use in Where Clauses More...
 
const OP_CGT = "C>"
 the SQL greater than operator (>) for use in Where Clauses More...
 
const OP_CLE = "C<="
 the SQL less than or equals (<=) operator for use in Where Clauses More...
 
const OP_CLT = "C<"
 the SQL less than (<) operator for use in Where Clauses when comparing two columns More...
 
const OP_CNE = "C!="
 the SQL not equals operator (!= or <>) for use in Where Clauses More...
 
const OP_EQ = "="
 the SQL equals operator (=) for use in Where Clauses More...
 
const OP_GE = ">="
 the SQL greater than or equals operator (>=) for use in Where Clauses More...
 
const OP_GT = ">"
 the SQL greater than operator (>) for use in Where Clauses More...
 
const OP_IN = "in"
 the SQL "in" operator for use in Where Clauses More...
 
const OP_IN_SELECT = "in_select"
 the SQL "in" operator with a select query for use in Where Clauses More...
 
const OP_LE = "<="
 the SQL less than or equals (<=) operator for use in Where Clauses More...
 
const OP_LIKE = "like"
 the SQL "like" operator for use in Where Clauses More...
 
const OP_LT = "<"
 the SQL less than (<) operator for use in Where Clauses More...
 
const OP_NE = "!="
 the SQL not equals operator (!= or <>) for use in Where Clauses More...
 
const OP_NOT = "not"
 the SQL "not" operator for use in Where Clauses More...
 
const OP_OR = "or"
 to combine SQL expressions with "or" for use in Where Clauses More...
 
const OP_SUBSTR = "substr"
 the SQL "substr" operator for use in Where Clauses More...
 
const SqlUtilDrivers = ...
 known drivers
 
const SZ_MAND = 1
 the data type takes a mandatory size parameter
 
const SZ_NONE = 0
 the data type does not take a size parameter
 
const SZ_NUM = 3
 the data type is numeric so takes an optional precision and scale
 
const SZ_OPT = 2
 the data type takes an optional size parameter
 
const VARCHAR = "string"
 specifies a VARCHAR column (equivalent to Qore::Type::String)
 

Detailed Description

Qore AbstractNumericDataType class definition.

Qore Table class definition.

Qore SqlUtilStringType class definition.

Qore SqlUtilIntType class definition.

Qore SqlUtilFloatType class definition.

Qore SqlUtilDbSpecificDataType class definition.

Qore SqlUtilDateType class definition.

Qore SqlUtilColumnField class definition.

Qore SqlUtilColumnDataType class definition.

the SqlUtil namespace contains all the objects in the SqlUtil module

Qore SqlResultInfo hash definition.

Qore Database class definition.

Qore AbstractTable class definition.

Qore AbstractSqlUtilBase class definition.

Qore AbstractSavepointHelper class definition.

AbstractNumericDataType.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

AbstractSavepointHelper.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

AbstractSqlUtilBase.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. contains all public definitions in the SqlUtil module

AbstractTable.qc Copyright 2019 - 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. contains all public definitions in the SqlUtil module

Database.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

SqlResultInfo.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. contains all public definitions in the SqlUtil module

SqlUtilColumnDataType.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

SqlUtilColumnField.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

SqlUtilDateType.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

SqlUtilDbSpecificDataType.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

SqlUtilFloatType.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

SqlUtilIntType.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

SqlUtilStringType.qc Copyright 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. strict argument handling contains all public definitions in the SqlUtil module

Table.qc Copyright 2019 - 2022 Qore Technologies, s.r.o.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. contains all public definitions in the SqlUtil module

Function Documentation

◆ cop_append()

hash<ColumnOperatorInfo> SqlUtil::cop_append ( auto  column,
string  arg 
)

returns a ColumnOperatorInfo hash for the "append" operator with the given argument

Example:
*list<auto> rows = table.selectRows(("columns": ("id", cop_append("name", "-migrated")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
argthe text to append (ie concatenate) to the row values in the output column
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_as()

hash<ColumnOperatorInfo> SqlUtil::cop_as ( auto  column,
string  arg 
)

returns a ColumnOperatorInfo hash for the "as" operator with the given argument

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_as("errors", "error_count")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins) or any other column "cop_..." function
argthe new name of the output column
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash
See also
SqlUtil::cop_value for SQL literals handling

◆ cop_avg()

hash<ColumnOperatorInfo> SqlUtil::cop_avg ( auto  column)

returns a ColumnOperatorInfo hash for the "avg" operator; returns average column values

Example:
*list<auto> rows = table.selectRows(("columns": (cop_avg("quantity")), "where": ("order_type": "wholesale")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_cast()

hash<ColumnOperatorInfo> SqlUtil::cop_cast ( auto  column,
string  arg,
auto  arg1,
auto  arg2 
)

returns a ColumnOperatorInfo hash for the "cast" operator with the given argument(s)

Example:
*list<auto> rows = table.selectRows(("columns": ("id", cop_cast("id", "string")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins) or any other column "cop_..." function
argthe new datatype to cast the column value(s) to
arg1optional, type dependent, specification (e.g. size or precision)
arg2optional, type dependent, specification (e.g. scale)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash
See also
SqlUtil::cop_value for SQL literals handling

◆ cop_coalesce()

hash<ColumnOperatorInfo> SqlUtil::cop_coalesce ( auto  col1,
auto  col2 
)

returns a ColumnOperatorInfo hash for the "coalesce" operator with the given column arguments; the first non-NULL column value will be returned

Example:
*list<auto> rows = table.selectRows(("columns": ("first_name", "last_name", cop_colesce("first_name", "last_name")), "where": ("type": "user")));
Parameters
col1the name or column operator hash for the first value
col2the name or column operator hash for the second value, additional values should follow this argument
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash
Exceptions
COALESCE-ERRORthe arguments must be either string column designators or column operator hashes

◆ cop_count()

hash<ColumnOperatorInfo> SqlUtil::cop_count ( auto  column = '')

returns a ColumnOperatorInfo hash for the "count" operator; returns row counts

Example:
*list<auto> rows = table.selectRows(("columns": ("account_type", cop_count()), "where": ("type": "user"), "groupby": "account_type"));
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_cume_dist()

hash<ColumnOperatorInfo> SqlUtil::cop_cume_dist ( )

Analytic/window function: relative rank of the current row.

Example:
# with table structure (Schema module syntax)
const T_TestAnalyticFunctions = (
"columns" : (
"id" : c_number(),
"row_type" : c_varchar(10),
"row_value" : c_number(),
),
);
# select hash
hash<auto> sh = (
"columns" : cop_as(cop_over(cop_cume_dist(), "row_type", "id"), "cume_dist"),
);
# rendered SQL statement
# select cume_dist() over (partition by row_type order by id) as "cume_dist" test_analytic_functions;

Analytic/window function. Must be used with cop_over() with partitionby and orderby arguments

Note
MySQL DB family: This analytic function is available only in MariaDB 10.2 and later only.
Returns
relative rank of the current row: (number of rows preceding or peer with current row) / (total rows)
Since
SqlUtil 1.4.0

◆ cop_dense_rank()

hash<ColumnOperatorInfo> SqlUtil::cop_dense_rank ( )

Analytic/window function: rank of the current row without gaps.

Example:
# with table structure (Schema module syntax)
const T_TestAnalyticFunctions = (
"columns" : (
"id" : c_number(),
"row_type" : c_varchar(10),
"row_value" : c_number(),
),
);
# select hash
hash<auto> sh = (
"columns" : cop_as(cop_over(cop_dense_rank(), "row_type", "id"), "dense_rank"),
);
# rendered SQL statement
select dense_rank() over (partition by row_type order by id) as "dense_rank" from test_analytic_functions;

Analytic/window function. Must be used with cop_over() with partitionby and orderby arguments

Note
MySQL DB family: This analytic function is available only in MariaDB 10.2 and later only.
Returns
rank of the current row without gaps; this function counts peer groups
Since
SqlUtil 1.4.0

◆ cop_distinct()

hash<ColumnOperatorInfo> SqlUtil::cop_distinct ( auto  column)

returns a ColumnOperatorInfo hash for the "distinct" operator with the given argument; returns distinct column values

Example:
*list<auto> rows = table.selectRows(("columns": ("id", cop_distinct("name")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_divide()

hash<ColumnOperatorInfo> SqlUtil::cop_divide ( auto  column1,
auto  column2 
)

returns a ColumnOperatorInfo hash for the "/" operator with the given arguments

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_divide("complete_count", "error_count")), "where": ("type": "user")));
Parameters
column1the column specification for the first argument (string name or dot notation for use in joins)
column2the column specification for the second argument (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_first_value()

hash<ColumnOperatorInfo> SqlUtil::cop_first_value ( any  column)

Analytic/window function: value evaluated at the row that is the first row of the window frame.

Example:
# with table structure (Schema module syntax)
const T_TestAnalyticFunctions = (
"columns" : (
"id" : c_number(),
"row_type" : c_varchar(10),
"row_value" : c_number(),
),
);
# select hash
hash<auto> sh = (
"columns" : cop_as(cop_over(cop_first_value("row_value"), "row_type", "id"), "first_value"),
);
# rendered SQL statement
select first_value(row_value) over (partition by row_type order by id) as "first_value" from test_analytic_functions;

Analytic/window function. Must be used with cop_over() with partitionby and orderby arguments

Note
MySQL DB family: This analytic function is available only in MariaDB 10.2 and later only.
Returns
returns value evaluated at the row that is the first row of the window frame
Since
SqlUtil 1.4.0

◆ cop_last_value()

hash<ColumnOperatorInfo> SqlUtil::cop_last_value ( any  column)

Analytic/window function: value evaluated at the row that is the last row of the window frame.

Example:
# with table structure (Schema module syntax)
const T_TestAnalyticFunctions = (
"columns" : (
"id" : c_number(),
"row_type" : c_varchar(10),
"row_value" : c_number(),
),
);
# select hash
hash<auto> sh = (
"columns" : cop_as(cop_over(cop_last_value("row_value"), "row_type", "id"), "last_value"),
);
# rendered SQL statement
select last_value(row_value) over (partition by row_type order by id) as "last_value" from test_analytic_functions;

Analytic/window function. Must be used with cop_over() with partitionby and orderby arguments

Note
MySQL DB family: This analytic function is available only in MariaDB 10.2 and later only.
Returns
returns value evaluated at the row that is the last row of the window frame
Since
SqlUtil 1.4.0

◆ cop_length()

hash<ColumnOperatorInfo> SqlUtil::cop_length ( auto  column)

returns a ColumnOperatorInfo hash for the "len" operator with the given argument; returns the length of the given text field

Example:
*list<auto> rows = table.selectRows(("columns": ("id", cop_length("product_code")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash
Since
SqlUtil 1.3.1

◆ cop_lower()

hash<ColumnOperatorInfo> SqlUtil::cop_lower ( auto  column)

returns a ColumnOperatorInfo hash for the "lower" operator with the given argument; returns a column value in lower case

Example:
*list<auto> rows = table.selectRows(("columns": ("id", cop_lower("name")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_max()

hash<ColumnOperatorInfo> SqlUtil::cop_max ( auto  column)

returns a ColumnOperatorInfo hash for the "max" operator; returns maximum column values

Example:
*list<auto> rows = table.selectRows(("columns": (cop_max("id")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_min()

hash<ColumnOperatorInfo> SqlUtil::cop_min ( auto  column)

returns a ColumnOperatorInfo hash for the "min" operator; returns minimum column values

Example:
*list<auto> rows = table.selectRows(("columns": (cop_min("id")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_minus()

hash<ColumnOperatorInfo> SqlUtil::cop_minus ( auto  column1,
auto  column2 
)

returns a ColumnOperatorInfo hash for the "-" operator with the given arguments

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_minus("complete_count", "error_count")), "where": ("type": "user")));
Parameters
column1the column specification for the first argument (string name or dot notation for use in joins)
column2the column specification for the second argument (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_multiply()

hash<ColumnOperatorInfo> SqlUtil::cop_multiply ( auto  column1,
auto  column2 
)

returns a ColumnOperatorInfo hash for the "*" operator with the given arguments

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_multiply("complete_count", "error_count")), "where": ("type": "user")));
Parameters
column1the column specification for the first argument (string name or dot notation for use in joins)
column2the column specification for the second argument (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_ntile()

hash<ColumnOperatorInfo> SqlUtil::cop_ntile ( int  value)

Analytic/window function: integer ranging from 1 to the argument value, dividing the partition as equally as possible.

Example:
# with table structure (Schema module syntax)
const T_TestAnalyticFunctions = (
"columns" : (
"id" : c_number(),
"row_type" : c_varchar(10),
"row_value" : c_number(),
),
);
# select hash
hash<auto> sh = (
"columns" : cop_as(cop_over(cop_ntile(10), "row_type", "id"), "ntile"),
);
# rendered SQL statement
select ntile(10) over (partition by row_type order by id) as "ntile" from test_analytic_functions;

Analytic/window function. Must be used with cop_over() with partitionby and orderby arguments

Note
MySQL DB family: This analytic function is available only in MariaDB 10.2 and later only.
Parameters
valuean integer value used as count of sp;it buckets
Returns
integer ranging from 1 to the argument value, dividing the partition as equally as possible
Since
SqlUtil 1.4.0

◆ cop_over()

hash<ColumnOperatorInfo> SqlUtil::cop_over ( auto  column,
*string  partitionby,
*string  orderby 
)

returns a ColumnOperatorInfo hash for the "over" clause

Example:
*list<auto> rows = table.selectRows(("columns": ("account_type", cop_count(), cop_as(cop_over(cop_max("qty"), "account_id"), "max_qty_per_account")), "where": ("type": "user"), "groupby": "account_type"));
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_percent_rank()

hash<ColumnOperatorInfo> SqlUtil::cop_percent_rank ( )

Analytic/window function: relative rank of the current row.

Example:
# with table structure (Schema module syntax)
const T_TestAnalyticFunctions = (
"columns" : (
"id" : c_number(),
"row_type" : c_varchar(10),
"row_value" : c_number(),
),
);
# select hash
hash<auto> sh = (
"columns" : cop_as(cop_over(cop_percent_rank(), "row_type", "id"), "percent_rank"),
);
# rendered SQL statement
select percent_rank() over (partition by row_type order by id) as "percent_rank" from test_analytic_functions;

Analytic/window function. Must be used with cop_over() with partitionby and orderby arguments

Note
MySQL DB family: This analytic function is available only in MariaDB 10.2 and later only.
Returns
relative rank of the current row: (rank - 1) / (total rows - 1)
Since
SqlUtil 1.4.0

◆ cop_plus()

hash<ColumnOperatorInfo> SqlUtil::cop_plus ( auto  column1,
auto  column2 
)

returns a ColumnOperatorInfo hash for the "+" operator with the given arguments

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_plus("complete_count", "error_count")), "where": ("type": "user")));
Parameters
column1the column specification for the first argument (string name or dot notation for use in joins)
column2the column specification for the second argument (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_prepend()

hash<ColumnOperatorInfo> SqlUtil::cop_prepend ( auto  column,
string  arg 
)

returns a ColumnOperatorInfo hash for the "prepend" operator with the given argument

Example:
*list<auto> rows = table.selectRows(("columns": ("id", cop_prepend("name", "migrated-")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
argthe text to prepend to the row values in the output column
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_rank()

hash<ColumnOperatorInfo> SqlUtil::cop_rank ( )

Analytic/window function: rank of the current row with gaps.

Example:
# with table structure (Schema module syntax)
const T_TestAnalyticFunctions = (
"columns" : (
"id" : c_number(),
"row_type" : c_varchar(10),
"row_value" : c_number(),
),
);
# select hash
hash<auto> sh = (
"columns" : cop_as(cop_over(cop_rank(), "row_type", "id"), "rank"),
);
# rendered SQL statement
select rank() over (partition by row_type order by id) as "rank" from test_analytic_functions;

Analytic/window function. Must be used with cop_over() with partitionby and orderby arguments

Note
MySQL DB family: This analytic function is available only in MariaDB 10.2 and later only.
Returns
rank of the current row with gaps; same as row_number of its first peer
Since
SqlUtil 1.4.0

◆ cop_row_number()

hash<ColumnOperatorInfo> SqlUtil::cop_row_number ( )

Analytic/window function: number of the current row within its partition, counting from 1.

Example:
# with table structure (Schema module syntax)
const T_TestAnalyticFunctions = (
"columns" : (
"id" : c_number(),
"row_type" : c_varchar(10),
"row_value" : c_number(),
),
);
# select hash
hash<auto> sh = (
"columns" : cop_as(cop_over(cop_row_number(), "row_type", "id"), "row_number"),
);
# rendered SQL statement
select row_number() over (partition by row_type order by id) as "row_number" from test_analytic_functions;

Analytic/window function. Must be used with cop_over() with partitionby and orderby arguments

Note
MySQL DB family: This analytic function is available only in MariaDB 10.2 and later only.
Returns
number of the current row within its partition, counting from 1
Since
SqlUtil 1.4.0

◆ cop_seq()

hash<ColumnOperatorInfo> SqlUtil::cop_seq ( string  seq,
*string  as 
)

returns a ColumnOperatorInfo hash for the "seq" operator with the given argument giving the sequence name whose value should be returned

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_seq("xid", "xis")), "where": ("type": "user")));
Parameters
seqthe name of the sequence whose value should be returned
asan optional column name that should be returned for the sequence value (so that SqlUtil::cop_as() need not be used)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_seq_currval()

hash<ColumnOperatorInfo> SqlUtil::cop_seq_currval ( string  seq,
*string  as 
)

returns a ColumnOperatorInfo hash for the "seq_currval" operator with the given argument giving the sequence name whose current value should be returned

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_seq("xid", "xid_val"), cop_seq_currval("xid", "xid_current")), "where": ("type": "user")));
Parameters
seqthe name of the sequence whose current value should be returned
asan optional column name that should be returned for the sequence value (so that SqlUtil::cop_as() need not be used)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_substr()

hash<ColumnOperatorInfo> SqlUtil::cop_substr ( auto  column,
int  start,
*int  count 
)

returns a ColumnOperatorInfo hash for the "substr" operator with the given arguments; returns a substring of a column value

Example:
*list<auto> rows = table.selectRows(("columns": ("id", cop_substr("name", 1, 1)), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
startposition where the substring starts
countlength of the substring in characters
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_sum()

hash<ColumnOperatorInfo> SqlUtil::cop_sum ( auto  column)

returns a ColumnOperatorInfo hash for the "sum" operator; returns the total sum of a numeric column.

Example:
*list<auto> rows = table.selectRows(("columns": (cop_sum("quantity")), "where": ("order_type": "wholesale")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_trunc_date()

hash<ColumnOperatorInfo> SqlUtil::cop_trunc_date ( auto  column,
string  mask 
)

Truncates a date column or value regarding the given mask. The resulting value remains Qore::date (no conversion to eg. string)

Example:
*list<auto> rows = table.selectRows(("columns": cop_trunc_date("mydate", DF_MINUTE));
# input: 2017-02-01 14:22:37
# output 2017-02-01 14:22:00
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
maskthe string with one of specified values rederenced in cop_trunc_date formats
Returns
a column operator description hash corresponding to the arguments for use in the columns argument of a select option hash
Since
SqlUtil 1.4.0

◆ cop_upper()

hash<ColumnOperatorInfo> SqlUtil::cop_upper ( auto  column)

returns a ColumnOperatorInfo hash for the "upper" operator with the given argument; returns a column value in upper case

Example:
*list<auto> rows = table.selectRows(("columns": ("id", cop_upper("name")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_value()

hash<ColumnOperatorInfo> SqlUtil::cop_value ( auto  arg)

returns a ColumnOperatorInfo hash for the "value" (literal) operator with the given argument

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_value(100)), "where": ("type": "user")));
Parameters
argthe value to be returned in the column
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

SQL literals can be useful in some cases - as dummy values for select statements where there is exact columns required, unions, expected values for arc.insertFromIterator(src.getStatement(sh)) "insert as select", etc.

The term literal refers to a fixed data value. For example, 123, 'foobar' etc.

Mapping of Qore values to literals:

Qore Type SQL Type Qore Example SQL interpretation
Integer NUMBER as it is 123 123
Float NUMBER as it is 12.3 12.3
Numeric NUMBER as it is 1.2n 1.2
Date String representation of the date using DB native implementation like TO_TIMESTAMP for Oracle. now() to_timestamp('20150421104825000000', 'YYYYMMDDHH24MISSFF6')
Bool Internal representation of the bool value using DB native implementation True 1
String Standard and escaped string literal. No additional literal methods like Oracle's nq{foobar} are supported now "foo bar" 'foo bar'
NULL Direct null literal NULL null
NOTHING Direct null literal NOTHING null
Note
Passing an existing SQL function name as a value to the cop_value() function does not result in function call. The string value is escaped as it is. Example: sysdate becomes 'sysdate'. See example below.

The most useful SqlUtil::cop_value() usage is with cooperation of SqlUtil::cop_as() which allows human readable column name aliases.

Warning
Using SqlUtil::cop_value() without SqlUtil::cop_as() can result in errors depending on the DB backend. For example Oracle's use of cop_value(1), cop_value(True) ends with ORA-00918: column ambiguously defined because both values are interpreted as 1 in the resulting SQL.

Example

%new-style
%requires SqlUtil
DatasourcePool ds("oracle:pvanek_omq/omq@xbox(al32utf8)");
Database db(ds);
Table t(ds, "dual");
hash<auto> sh = (
"columns" : (
cop_as(cop_value(1), "as_int"),
cop_as(cop_value(1.2), "as_float"),
cop_as(cop_value(3.2n), "as_numeric"),
cop_as(cop_value(now()), "as_date"),
cop_as(cop_value("foo bar"), "as_string"),
cop_as(cop_value("sysdate"), "as_function_call"),
cop_as(cop_value(True), "as_bool"),
cop_as(cop_value(NULL), "as_null"),
cop_as(cop_value(NOTHING), "as_nothing"),
),
);
string sql;
on_exit { printf("sql: %s\n", sql); }
printf("%N\n", t.selectRow(sh, \sql));
# results in:
hash: (9 members)
as_int : 1
as_float : 1.2
as_numeric : 3.2
as_date : 2015-04-21 10:56:57.000000 Tue +02:00 (CEST)
as_string : "foo bar"
as_function_call : "sysdate"
as_bool : 1
as_null : <NULL>
as_nothing : <NULL>
sql: select 1 as as_int,1.2 as as_float,3.2 as as_numeric,to_timestamp('20150421105657000000', 'YYYYMMDDHH24MISSFF6') as as_date,'foo bar' as as_string,'sysdate' as as_function_call,1 as as_bool,null as as_null,null as as_nothing from pvanek_omq.workflows fetch next %v rows only
date now()
string printf(string fmt,...)

◆ cop_year()

hash<ColumnOperatorInfo> SqlUtil::cop_year ( auto  column)

returns a ColumnOperatorInfo hash for the "year" operator with the given argument

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_year("error_time")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_year_day()

hash<ColumnOperatorInfo> SqlUtil::cop_year_day ( auto  column)

returns a ColumnOperatorInfo hash for the "year_day" operator with the given argument

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_year_day("error_time")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_year_hour()

hash<ColumnOperatorInfo> SqlUtil::cop_year_hour ( auto  column)

returns a ColumnOperatorInfo hash for the "year_hour" operator with the given argument

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_year_hour("error_time")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ cop_year_month()

hash<ColumnOperatorInfo> SqlUtil::cop_year_month ( auto  column)

returns a ColumnOperatorInfo hash for the "year_month" operator with the given argument

Example:
*list<auto> rows = table.selectRows(("columns": ("id", "name", cop_year_month("error_time")), "where": ("type": "user")));
Parameters
columnthe column specification for the column (string name or dot notation for use in joins)
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash

◆ iop_seq()

hash<InsertOperatorInfo> SqlUtil::iop_seq ( string  arg)

returns an InsertOperatorInfo hash for retrieving the value of the given sequence in insert queries

Example:
table.insert(("id": id, "ref": iop_seq("xid")));
Parameters
argthe name of the sequence whose value should be inserted into the column
Returns
an InsertOperatorInfo hash corresponding to the arguments for use in insert queries

◆ iop_seq_currval()

hash<InsertOperatorInfo> SqlUtil::iop_seq_currval ( string  arg)

returns an InsertOperatorInfo hash for retrieving the current value of the given sequence in insert queries

Example:
table.insert(("id": id, "ref": iop_seq("xid"), "ref2": iop_seq_currval("xid")));
Parameters
argthe name of the sequence whose current value should be inserted into the column
Returns
an InsertOperatorInfo hash corresponding to the arguments for use in insert queries

◆ join_inner() [1/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_inner ( AbstractTable  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for standard inner joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_inner(table2, "t2", ("id": "altid"))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_inner(table2)));
Parameters
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_inner() [2/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_inner ( string  ta,
AbstractTable  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for standard inner joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_inner(table2, "t2", ("id": "altid")) + join_inner("t2", table3)));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_inner(table2)));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash
Since
SqlUtil 1.3

◆ join_inner() [3/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_inner ( string  ta,
Table  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for standard inner joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_inner(table2, "t2", ("id": "altid")) + join_inner("t2", table3)));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_inner(table2)));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_inner() [4/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_inner ( string  table_name,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for standard inner joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_inner(table2, "t2", ("id": "altid"))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_inner(table2)));
Parameters
table_namethe table to join with; table will be subject to deferred resolution
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_inner() [5/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_inner ( Table  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for standard inner joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_inner(table2, "t2", ("id": "altid"))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_inner(table2)));
Parameters
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_inner_alias()

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_inner_alias ( string  ta,
string  table_name,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for standard inner joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_inner(table2, "t2", ("id": "altid")) + join_inner("t2", table3)));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_inner(table2)));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
table_namethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash
Since
SqlUtil 1.3

◆ join_left() [1/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_left ( AbstractTable  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for left outer joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", ("id": "altid"), ("tag", op_like("offset%")))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", NOTHING, ("tag", op_like("offset%")))));
Parameters
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_left() [2/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_left ( string  ta,
AbstractTable  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for left outer joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", ("id": "altid"), ("tag", op_like("offset%"))) + join_left("t2", table3, "t3")));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", NOTHING, ("tag", op_like("offset%"))) + join_left("t2", table3, "t3")));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_left() [3/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_left ( string  ta,
Table  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for left outer joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", ("id": "altid"), ("tag", op_like("offset%"))) + join_left("t2", table3, "t3")));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", NOTHING, ("tag", op_like("offset%"))) + join_left("t2", table3, "t3")));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_left() [4/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_left ( string  table_name,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for left outer joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", ("id": "altid"), ("tag", op_like("offset%")))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", NOTHING, ("tag", op_like("offset%")))));
Parameters
table_namethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash
Since
SqlUtil 1.3

◆ join_left() [5/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_left ( Table  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for left outer joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", ("id": "altid"), ("tag", op_like("offset%")))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", NOTHING, ("tag", op_like("offset%")))));
Parameters
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_left_alias()

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_left_alias ( string  ta,
string  table_name,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for left outer joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", ("id": "altid"), ("tag", op_like("offset%"))) + join_left("t2", table3, "t3")));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_left(table2, "t2", NOTHING, ("tag", op_like("offset%"))) + join_left("t2", table3, "t3")));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
table_namethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash
Since
SqlUtil 1.3

◆ join_right() [1/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_right ( AbstractTable  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for right outer joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", ("id": "altid"), ("tag", op_like("offset%")))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", NOTHING, ("tag", op_like("offset%")))));
Parameters
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_right() [2/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_right ( string  ta,
AbstractTable  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for right outer joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", ("id": "altid"), ("tag", op_like("offset%"))) + join_right("t2", table3, "t3")));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", NOTHING, ("tag", op_like("offset%"))) + join_right("t2", table3, "t3")));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_right() [3/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_right ( string  ta,
Table  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for right outer joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", ("id": "altid"), ("tag", op_like("offset%"))) + join_right("t2", table3, "t3")));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", NOTHING, ("tag", op_like("offset%"))) + join_right("t2", table3, "t3")));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_right() [4/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_right ( string  table_name,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for right outer joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", ("id": "altid"), ("tag", op_like("offset%")))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", NOTHING, ("tag", op_like("offset%")))));
Parameters
table_namethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash
Since
SqlUtil 1.3

◆ join_right() [5/5]

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_right ( Table  table,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for right outer joins with the given arguments

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", ("id": "altid"), ("tag", op_like("offset%")))));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", NOTHING, ("tag", op_like("offset%")))));
Parameters
tablethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash

◆ join_right_alias()

hash<string, hash<JoinOperatorInfo> > SqlUtil::join_right_alias ( string  ta,
string  table_name,
*string  alias,
*hash  jcols,
*hash  cond,
*hash< auto >  opt 
)

returns a hash for right outer joins with the given arguments for use when joining with a table other than the primary table

Example With Explicit Join Columns:
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", ("id": "altid"), ("tag", op_like("offset%"))) + join_right("t2", table3, "t3")));
Example With Implicit Join Columns:
(using an automatically detected foreign key to primary key constraint)
*list<auto> rows = table.selectRows(("join": join_right(table2, "t2", NOTHING, ("tag", op_like("offset%"))) + join_right("t2", table3, "t3")));
Parameters
tathe table name or alias of the other table to join with when not joining with the primary table
table_namethe table to join with
aliasthe alias for table in the query
jcolsthe columns to use for the join, the keys will be columns in the source table and the values are columns in the table argument; if this argument is NOTHING, then if there is any foreign key in one table pointing to the primary key of the other table, then this information is automatically assumed as the join condition; a foreign constraint in the current table to the primary key in table will be used first if it exists
condadditional conditions for the join clause for the table argument; see Where Clauses for more information
optoptional join options (for example, to specify a partition for the join if supported)
Returns
a join description hash corresponding to the arguments for use in the join argument of a select option hash
Since
SqlUtil 1.3

◆ make_cop()

hash<ColumnOperatorInfo> SqlUtil::make_cop ( string  cop,
auto  column,
auto  arg 
)

returns a ColumnOperatorInfo hash

Parameters
copthe column operator (one of SQL Column Operators)
columnthe column name
argthe argument to the operator
Returns
a ColumnOperatorInfo hash corresponding to the arguments for use in the columns argument of a select option hash
Note
Normally this function is not called directly, but rather by the other column operator functions

◆ make_iop()

hash<InsertOperatorInfo> SqlUtil::make_iop ( string  iop,
auto  arg 
)

returns an InsertOperatorInfo hash

Parameters
iopthe value operator (one of SQL Insert Operators)
argthe argument to the operator
Returns
an InsertOperatorInfo hash corresponding to the arguments for use as values in insert queries
Note
Normally this function is not called directly, but rather by the other insert operator functions

◆ make_jop() [1/2]

hash<string, hash<JoinOperatorInfo> > SqlUtil::make_jop ( string  jop,
AbstractTable  table,
*string  alias,
*hash  jcols,
*hash  cond,
*string  ta,
*hash< auto >  opt 
)

returns hash keyed with the table name assigned to a JoinOperatorInfo hash

Note
this function is normally not used directly, but rather is called by the other SQL Join Operator Functions

◆ make_jop() [2/2]

hash<string, hash<JoinOperatorInfo> > SqlUtil::make_jop ( string  jop,
string  table_name,
*string  alias,
*hash  jcols,
*hash  cond,
*string  ta,
*hash< auto >  opt 
)

returns a hash keyed with the table name assigned to a JoinOperatorInfo hash

This version is used for deferred table resolution at join time

Note
this function is normally not used directly, but rather is called by the other SQL Join Operator Functions

◆ make_uop()

hash<UpdateOperatorInfo> SqlUtil::make_uop ( string  uop,
auto  arg,
*hash< UpdateOperatorInfo nest 
)

returns an UpdateOperatorInfo hash

Parameters
uopthe update operator (one of SQL Update Operators)
argthe argument to the operator
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements
Note
Normally this function is not called directly, but rather by the other update operator functions

◆ op_between()

hash<OperatorInfo> SqlUtil::op_between ( auto  l,
auto  r 
)

returns an OperatorInfo hash for the "between" operator with the given arguments, neither of which can be NULL or NOTHING; for use in where clauses

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_between("US", "UX"))));
Parameters
lthe lower bound for the "between" operator
rthe upper bound for the "between" operator
Returns
an OperatorInfo hash for use in where clauses
Exceptions
BETWEEN-ERRORone or both of the required arguments are NULL or NOTHING

◆ op_ceq()

hash<OperatorInfo> SqlUtil::op_ceq ( string  arg)

returns an OperatorInfo hash for the "=" operator with the given argument for use in where clauses when comparing the values of two columns

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_ceq("other_name"))));
Parameters
argthe name of the column to compare against
Returns
an OperatorInfo hash for use in where clauses
See also
op_eq() for a function to be used when comparing a column against an immediate value

◆ op_cge()

hash<OperatorInfo> SqlUtil::op_cge ( string  arg)

returns an OperatorInfo hash for the ">=" operator with the given argument for use in where clauses when comparing the values of two columns

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_cge("other_name"))));
Parameters
argthe name of the column to compare against
Returns
an OperatorInfo hash for use in where clauses
See also
op_ge() for a function to be used when comparing a column against an immediate value

◆ op_cgt()

hash<OperatorInfo> SqlUtil::op_cgt ( string  arg)

returns an OperatorInfo hash for the ">" operator with the given argument for use in where clauses when comparing the values of two columns

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_cgt("other_name"))));
Parameters
argthe name of the column to compare against
Returns
an OperatorInfo hash for use in where clauses
See also
op_gt() for a function to be used when comparing a column against an immediate value

◆ op_cle()

hash<OperatorInfo> SqlUtil::op_cle ( string  arg)

returns an OperatorInfo hash for the "<=" operator with the given argument for use in where clauses when comparing the values of two columns

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_cle("other_name"))));
Parameters
argthe name of the column to compare against
Returns
an OperatorInfo hash for use in where clauses
See also
op_le() for a function to be used when comparing a column against an immediate value

◆ op_clt()

hash<OperatorInfo> SqlUtil::op_clt ( string  arg)

returns an OperatorInfo hash for the "<" operator with the given argument for use in where clauses when comparing the values of two columns

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_clt("other_name"))));
Parameters
argthe name of the column to compare against
Returns
an OperatorInfo hash for use in where clauses
See also
op_lt() for a function to be used when comparing a column against an immediate value

◆ op_cne()

hash<OperatorInfo> SqlUtil::op_cne ( string  arg)

returns an OperatorInfo hash for the "!=" or "<>" operator with the given argument for use in where clauses when comparing the values of two columns

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_cne("other_name"))));
Parameters
argthe name of the column to compare against
Returns
an OperatorInfo hash for use in where clauses
See also
op_ne() for a function to be used when comparing a column against an immediate value

◆ op_eq()

hash<OperatorInfo> SqlUtil::op_eq ( auto  arg)

returns an OperatorInfo hash for the "=" operator with the given argument for use in where clauses when comparing column values to immediate values

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_eq("Smith"))));
Parameters
argthe argument for the operator
Returns
an OperatorInfo hash for use in where clauses
See also
op_ceq() for a function to be used when comparing two column values

This operator also handles Qore::NULL as SQL NULL values expanding them into IS NULL clause.

◆ op_ge()

hash<OperatorInfo> SqlUtil::op_ge ( auto  arg)

returns an OperatorInfo hash for the ">=" operator with the given argument for use in where clauses when comparing column values to immediate values

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_ge("Apple"))));
Parameters
argthe argument for the operator
Returns
an OperatorInfo hash for use in where clauses
See also
op_cge() for a function to be used when comparing two column values

◆ op_gt()

hash<OperatorInfo> SqlUtil::op_gt ( auto  arg)

returns an OperatorInfo hash for the ">" operator with the given argument for use in where clauses when comparing column values to immediate values

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_gt("Apple"))));
Parameters
argthe argument for the operator
Returns
an OperatorInfo hash for use in where clauses
See also
op_cgt() for a function to be used when comparing two column values

◆ op_in() [1/2]

hash<OperatorInfo> SqlUtil::op_in ( )

returns an OperatorInfo hash for the "in" operator with all arguments passed to the function; for use in where clauses

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_in(200, 300, 500, 9))));
Returns
an OperatorInfo hash for use in where clauses
Note
The argument list size may be constrained depending on the database server / driver used; passing a large number of arguments to this function may be a sign of an improper application or query design; consider using a join with a temporary table instead of passing a large number of arguments to this function

◆ op_in() [2/2]

hash<OperatorInfo> SqlUtil::op_in ( list< auto >  args)

returns an OperatorInfo hash for the "in" operator with the given argument list as the first argument; for use in where clauses

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_in(idlist))));
Parameters
argsa list of values for the "in" operator
Returns
an OperatorInfo hash for use in where clauses
Note
The argument list size may be constrained depending on the database server / driver used; passing a large number of arguments to this function may be a sign of an improper application or query design; consider using a join with a temporary table instead of passing a large number of arguments to this function

◆ op_in_select() [1/3]

hash<OperatorInfo> SqlUtil::op_in_select ( AbstractTable  table,
hash< auto >  select_hash 
)

returns an OperatorInfo hash for the "in" operator with a subquery as the argument; for use in where clauses

Example:
*list<auto> rows = table.selectRows({"where": {"name": op_in_select(other_table, {"columns": "name", "where": where_hash})}});
Returns
an OperatorInfo hash for use in where clauses

◆ op_in_select() [2/3]

hash<OperatorInfo> SqlUtil::op_in_select ( string  table,
hash< auto >  select_hash 
)

returns an OperatorInfo hash for the "in" operator with a subquery as the argument; for use in where clauses

Example:
*list<auto> rows = table.selectRows({"where": {"name": op_in_select("other_table", {"columns": "name", "where": where_hash})}});
Returns
an OperatorInfo hash for use in where clauses

◆ op_in_select() [3/3]

hash<OperatorInfo> SqlUtil::op_in_select ( Table  table,
hash< auto >  select_hash 
)

returns an OperatorInfo hash for the "in" operator with a subquery as the argument; for use in where clauses

Example:
*list<auto> rows = table.selectRows({"where": {"name": op_in_select(other_table, {"columns": "name", "where": where_hash})}});
Returns
an OperatorInfo hash for use in where clauses

◆ op_le()

hash<OperatorInfo> SqlUtil::op_le ( auto  arg)

returns an OperatorInfo hash for the "<=" operator with the given argument for use in where clauses when comparing column values to immediate values

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_le("Zebra"))));
Parameters
argthe argument for the operator
Returns
an OperatorInfo hash for use in where clauses
See also
op_cle() for a function to be used when comparing two column values

◆ op_like()

hash<OperatorInfo> SqlUtil::op_like ( string  str)

returns an OperatorInfo hash for the "like" operator with the given argument for use in where clauses

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_like("%smith%"))));
Parameters
strthe argument for the operator
Returns
an OperatorInfo hash for use in where clauses

◆ op_lt()

hash<OperatorInfo> SqlUtil::op_lt ( auto  arg)

returns an OperatorInfo hash for the "<" operator with the given argument for use in where clauses when comparing column values to immediate values

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_lt("Zebra"))));
Parameters
argthe argument for the operator
Returns
an OperatorInfo hash for use in where clauses
See also
op_clt() for a function to be used when comparing two column values

◆ op_ne()

hash<OperatorInfo> SqlUtil::op_ne ( auto  arg)

returns an OperatorInfo hash for the "!=" or "<>" operator with the given argument for use in where clauses when comparing column values to immediate values

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_ne("Smith"))));
Parameters
argthe argument for the operator
Returns
an OperatorInfo hash for use in where clauses
See also
op_cne() for a function to be used when comparing two column values

This operator also handles Qore::NULL as SQL NULL values expanding them into IS NOT NULL clause.

◆ op_not()

hash<OperatorInfo> SqlUtil::op_not ( hash  arg)

returns an OperatorInfo hash for the "not" operator; for use in where clauses

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_not(op_in(200, 300, 500, 9))))_;
Returns
an OperatorInfo hash for use in where clauses

◆ op_substr() [1/2]

hash<OperatorInfo> SqlUtil::op_substr ( int  start,
*int  count,
string  text 
)

returns an OperatorInfo hash for the "substr" operator with the given arguments; for use in where clauses

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_substr(1, 6, "Martin"))));
Parameters
startposition where the substring starts
countlength of the substring in characters
textwhat substring should match
Returns
an OperatorInfo hash for use in where clauses

◆ op_substr() [2/2]

hash<OperatorInfo> SqlUtil::op_substr ( int  start,
string  text 
)

returns an OperatorInfo hash for the "substr" operator with the given arguments; for use in where clauses

Example:
*list<auto> rows = table.selectRows(("where": ("hex": op_substr(5, "BEEF"))));
Parameters
startposition where the substring starts
textwhat substring should match
Returns
an OperatorInfo hash for use in where clauses

◆ uop_append()

hash<UpdateOperatorInfo> SqlUtil::uop_append ( string  arg,
*hash< UpdateOperatorInfo nest 
)

returns an UpdateOperatorInfo hash for the "append" or concatenate operator with the given argument

Example:
int rows_updated = t.update(("permission_type": uop_append("-migrated", uop_lower())));
Parameters
argthe text to prepend to the row values in the output column
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_divide()

hash<UpdateOperatorInfo> SqlUtil::uop_divide ( auto  arg,
*hash< UpdateOperatorInfo nest 
)

returns an UpdateOperatorInfo hash for the "/" operator with the given arguments

Example:
int rows_updated = t.update(("counter": uop_divide(2)));
Parameters
argnumeric value to divide the column by
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_lower()

hash<UpdateOperatorInfo> SqlUtil::uop_lower ( *hash< UpdateOperatorInfo nest)

returns an UpdateOperatorInfo hash for the "lower" operator with the given argument; returns a column value in lower case

Example:
int rows_updated = t.update(("permission_type": uop_lower()));
Parameters
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_minus()

hash<UpdateOperatorInfo> SqlUtil::uop_minus ( auto  arg,
*hash< UpdateOperatorInfo nest 
)

returns an UpdateOperatorInfo hash for the "-" operator with the given arguments

Example:
int rows_updated = t.update(("counter": uop_minus(1)));
Parameters
argnumeric value to subtract from the column
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_multiply()

hash<UpdateOperatorInfo> SqlUtil::uop_multiply ( auto  arg,
*hash< UpdateOperatorInfo nest 
)

returns an UpdateOperatorInfo hash for the "*" operator with the given arguments

Example:
int rows_updated = t.update(("counter": uop_multiply(2)));
Parameters
argnumeric value to multiply the column by
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_plus()

hash<UpdateOperatorInfo> SqlUtil::uop_plus ( auto  arg,
*hash< UpdateOperatorInfo nest 
)

returns an UpdateOperatorInfo hash for the "+" operator with the given arguments

Example:
int rows_updated = t.update(("counter": uop_plus(1)));
Parameters
argnumeric value to add to the column
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_prepend()

hash<UpdateOperatorInfo> SqlUtil::uop_prepend ( string  arg,
*hash< UpdateOperatorInfo nest 
)

returns an UpdateOperatorInfo hash for the "prepend" operator with the given argument

Example:
int rows_updated = t.update(("permission_type": uop_prepend("migrated-", uop_lower())));
Parameters
argthe text to prepend to the row values in the output column
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_seq()

hash<UpdateOperatorInfo> SqlUtil::uop_seq ( string  seq)

returns an UpdateOperatorInfo hash for the "seq" operator with the given argument giving the sequence name whose value should be returned

Example:
*list<auto> rows = t.update(("id": uop_seq("xid")), ("type": "user"));
Parameters
seqthe name of the sequence whose value should be returned
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_seq_currval()

hash<UpdateOperatorInfo> SqlUtil::uop_seq_currval ( string  seq)

returns an UpdateOperatorInfo hash for the "seq" operator with the given argument giving the sequence name whose current value should be returned

Example:
*list<auto> rows = t.update(("id": uop_seq("xid")), ("type": "user"));
Parameters
seqthe name of the sequence whose current value should be returned
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_substr()

hash<UpdateOperatorInfo> SqlUtil::uop_substr ( int  start,
*int  count,
*hash< UpdateOperatorInfo nest 
)

returns an UpdateOperatorInfo hash for the "substr" operator with the given arguments; returns a substring of a column value

Example:
int rows_updated = t.update(("first_name": uop_substr(1, 1)));
Parameters
startposition where the substring starts
countlength of the substring in characters
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ uop_upper()

hash<UpdateOperatorInfo> SqlUtil::uop_upper ( *hash< UpdateOperatorInfo nest)

returns an UpdateOperatorInfo hash for the "upper" operator with the given argument; returns a column value in upper case

Example:
int rows_updated = t.update(("permission_type": uop_upper()));
Parameters
nestany nested operation to the operator
Returns
an UpdateOperatorInfo hash corresponding to the arguments for use in update statements

◆ wop_or()

hash<string, hash<OperatorInfo> > SqlUtil::wop_or ( hash  h1,
hash  h2 
)

returns an OperatorInfo hash with a fake "_OR_" column name; the list of arguments to the function is combined such that each hash in the list generates SQL expressions combined with "and" logic, and each of those clauses is combined with "or" logic; this is for use in where clauses

Example:
*list<auto> rows = table.selectRows(("where": ("name": op_ceq("other_name")) + wop_or(("type": "C", "validation_flag": op_ne(NULL)), ("expiration_date": op_ge(date)))));
Generates:
select * from schema.table where name = other_name and ((type = %v and validation flag is not null) or (expiration_date >= %v))
Parameters
h1the first hash of expressions to combine with "or" logic
h2the second hash of expressions to combine with "or" logic
...remaining expressions to combine with "or" logic
Returns
a hash with an OperatorInfo hash value keyed by a fake column name ("_OR_" with a numeric prefix for uniqueness) for use in a where operation description hash for use in where clauses
Note
a random prefix is used so that multiple uses of the function can be used to generate a single where clause hash

Variable Documentation

◆ COP_APPEND

const SqlUtil::COP_APPEND = "append"

to append a string to a column on output

See also
cop_append()

◆ COP_AS

const SqlUtil::COP_AS = "as"

to rename a column on output

See also
cop_as()

◆ COP_AVG

const SqlUtil::COP_AVG = "avg"

to return the average value

See also
cop_avg

◆ COP_CAST

const SqlUtil::COP_CAST = "cast"

to convert column value into another datatype

See also
cop_cast()

◆ COP_COALESCE

const SqlUtil::COP_COALESCE = "coalesce"

to return the first non-null argument in the list

See also
cop_coalesce()

◆ COP_COUNT

const SqlUtil::COP_COUNT = "count"

to return the row count

See also
cop_count

◆ COP_CUME_DIST

const SqlUtil::COP_CUME_DIST = "cume_dist"

Analytic (window) function: CUME_DIST.

See also
cop_cume_dist()
Since
SqlUtil 1.4.0

◆ COP_DENSE_RANK

const SqlUtil::COP_DENSE_RANK = "dense_rank"

Analytic (window) function: DENSE_RANK.

See also
cop_dense_rank()
Since
SqlUtil 1.4.0

◆ COP_DISTINCT

const SqlUtil::COP_DISTINCT = "distinct"

to return distinct values

See also
cop_distinct

◆ COP_DIVIDE

const SqlUtil::COP_DIVIDE = "divide"

the SQL "divide" operator

See also
cop_divide()

◆ COP_FIRST_VALUE

const SqlUtil::COP_FIRST_VALUE = "first_value"

Analytic (window) function: FIRST_VALUE.

See also
cop_first_value()
Since
SqlUtil 1.4.0

◆ COP_LAST_VALUE

const SqlUtil::COP_LAST_VALUE = "last_value"

Analytic (window) function: LAST_VALUE.

See also
cop_last_value()
Since
SqlUtil 1.4.0

◆ COP_LENGTH

const SqlUtil::COP_LENGTH = "length"

to get the length of a text field

See also
cop_length()
Since
SqlUtil 1.3.1

◆ COP_LOWER

const SqlUtil::COP_LOWER = "lower"

to return column value in lower case

See also
cop_lower()

◆ COP_MAX

const SqlUtil::COP_MAX = "max"

to return the maximum value

See also
cop_max

◆ COP_MIN

const SqlUtil::COP_MIN = "min"

to return the minimum value

See also
cop_min

◆ COP_MINUS

const SqlUtil::COP_MINUS = "minus"

the SQL "minus" operator

See also
cop_minus()

◆ COP_MULTIPLY

const SqlUtil::COP_MULTIPLY = "multiply"

the SQL "multiply" operator

See also
cop_multiply()

◆ COP_NTILE

const SqlUtil::COP_NTILE = "ntile"

Analytic (window) function: NTILE.

See also
cop_ntile()
Since
SqlUtil 1.4.0

◆ COP_OVER

const SqlUtil::COP_OVER = "over"

the SQL "over" clause

See also
cop_over()

◆ COP_PERCENT_RANK

const SqlUtil::COP_PERCENT_RANK = "percent_rank"

Analytic (window) function: PERCENT_RANK.

See also
cop_percent_rank()
Since
SqlUtil 1.4.0

◆ COP_PLUS

const SqlUtil::COP_PLUS = "plus"

the SQL "plus" operator

See also
cop_plus()

◆ COP_PREPEND

const SqlUtil::COP_PREPEND = "prepend"

to prepend a string to a column on output

See also
cop_prepend()

◆ COP_RANK

const SqlUtil::COP_RANK = "rank"

Analytic (window) function: RANK.

See also
cop_rank()
Since
SqlUtil 1.4.0

◆ COP_ROW_NUMBER

const SqlUtil::COP_ROW_NUMBER = "row_number"

Analytic (window) function: ROW_NUMBER.

See also
cop_row_number()
Since
SqlUtil 1.4.0

◆ COP_SEQ

const SqlUtil::COP_SEQ = "seq"

to return the next value of a sequence

See also
cop_seq()

◆ COP_SEQ_CURRVAL

const SqlUtil::COP_SEQ_CURRVAL = "seq_currval"

to return the last value of a sequence issued in the same session

See also
cop_seq_currval()

◆ COP_SUBSTR

const SqlUtil::COP_SUBSTR = "substr"

to extract a substring from a column

See also
cop_substr()

◆ COP_SUM

const SqlUtil::COP_SUM = "sum"

to return the sum value

See also
cop_sum

◆ COP_TRUNC_DATE

const SqlUtil::COP_TRUNC_DATE = "truncate_date"

to return the date with truncated value

See also
cop_trunc_date()

See also cop_trunc_date formats

Since
SqlUtil 1.4.0

◆ COP_UPPER

const SqlUtil::COP_UPPER = "upper"

to return column value in upper case

See also
cop_upper()

◆ COP_VALUE

const SqlUtil::COP_VALUE = "value"

to append a constant value (SQL Literal) to use as an output column value

See also
cop_value()

◆ COP_YEAR

const SqlUtil::COP_YEAR = "year"

to return a date value with year information only

See also
cop_year()

◆ COP_YEAR_DAY

const SqlUtil::COP_YEAR_DAY = "year_day"

to return a date value with year to day information

See also
cop_year_day()

◆ COP_YEAR_HOUR

const SqlUtil::COP_YEAR_HOUR = "year_hour"

to return a date value with year to hextern information

See also
cop_year_hour()

◆ COP_YEAR_MONTH

const SqlUtil::COP_YEAR_MONTH = "year_month"

to return a date value with year to month information

See also
cop_year_month()

◆ DB_FUNCTIONS

const SqlUtil::DB_FUNCTIONS = "functions"

Features constants.

Feature: functions

◆ IOP_SEQ

const SqlUtil::IOP_SEQ = "seq"

for using the value of a sequence

See also
iop_seq()

◆ IOP_SEQ_CURRVAL

const SqlUtil::IOP_SEQ_CURRVAL = "seq_currval"

for using the last value of a sequence issued in the current session

See also
iop_seq_currval()

◆ JOP_INNER

const SqlUtil::JOP_INNER = "inner"

for standard inner joins

See also
join_inner()

◆ JOP_LEFT

const SqlUtil::JOP_LEFT = "left"

for left outer joins

See also
join_left()

◆ JOP_RIGHT

const SqlUtil::JOP_RIGHT = "right"

for right outer joins

See also
join_right()

◆ OP_BETWEEN

const SqlUtil::OP_BETWEEN = "between"

the SQL "between" operator for use in Where Clauses

See also
op_between()

◆ OP_CEQ

const SqlUtil::OP_CEQ = "C="

the SQL equals operator (=) for use in Where Clauses

See also
op_ceq()

◆ OP_CGE

const SqlUtil::OP_CGE = "C>="

the SQL greater than or equals operator (>=) for use in Where Clauses

See also
op_cge()

◆ OP_CGT

const SqlUtil::OP_CGT = "C>"

the SQL greater than operator (>) for use in Where Clauses

See also
op_cgt()

◆ OP_CLE

const SqlUtil::OP_CLE = "C<="

the SQL less than or equals (<=) operator for use in Where Clauses

See also
op_cle()

◆ OP_CLT

const SqlUtil::OP_CLT = "C<"

the SQL less than (<) operator for use in Where Clauses when comparing two columns

See also
op_clt()

◆ OP_CNE

const SqlUtil::OP_CNE = "C!="

the SQL not equals operator (!= or <>) for use in Where Clauses

See also
op_cne()

◆ OP_EQ

const SqlUtil::OP_EQ = "="

the SQL equals operator (=) for use in Where Clauses

See also
op_eq()

◆ OP_GE

const SqlUtil::OP_GE = ">="

the SQL greater than or equals operator (>=) for use in Where Clauses

See also
op_ge()

◆ OP_GT

const SqlUtil::OP_GT = ">"

the SQL greater than operator (>) for use in Where Clauses

See also
op_gt()

◆ OP_IN

const SqlUtil::OP_IN = "in"

the SQL "in" operator for use in Where Clauses

See also
op_in()

◆ OP_IN_SELECT

const SqlUtil::OP_IN_SELECT = "in_select"

the SQL "in" operator with a select query for use in Where Clauses

See also
op_in_select()

◆ OP_LE

const SqlUtil::OP_LE = "<="

the SQL less than or equals (<=) operator for use in Where Clauses

See also
op_le()

◆ OP_LIKE

const SqlUtil::OP_LIKE = "like"

the SQL "like" operator for use in Where Clauses

See also
op_like()

◆ OP_LT

const SqlUtil::OP_LT = "<"

the SQL less than (<) operator for use in Where Clauses

See also
op_lt()

◆ OP_NE

const SqlUtil::OP_NE = "!="

the SQL not equals operator (!= or <>) for use in Where Clauses

See also
op_ne()

◆ OP_NOT

const SqlUtil::OP_NOT = "not"

the SQL "not" operator for use in Where Clauses

See also
op_not()

◆ OP_OR

const SqlUtil::OP_OR = "or"

to combine SQL expressions with "or" for use in Where Clauses

See also
wop_or()

◆ OP_SUBSTR

const SqlUtil::OP_SUBSTR = "substr"

the SQL "substr" operator for use in Where Clauses

See also
op_substr()