SQL::Statement::Operation - phpMan

Command: man perldoc info search(apropos)  


Sections
NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS NAME SYNOPSIS DESCRIPTION INHERITANCE METHODS AUTHOR AND COPYRIGHT
NAME
    SQL::Statement::Operation - base class for all operation terms

SYNOPSIS
      # create an operation with an SQL::Statement object as owner, specifying
      # the operation name (for error purposes), the left and the right
      # operand
      my $term = SQL::Statement::Operation->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation is an abstract base class providing the
    interface for all operation terms.

INHERITANCE
      SQL::Statement::Operation
      ISA SQL::Statement::Term

METHODS
  new
    Instantiates new operation term.

  value
    Return the result of the operation of the term by calling operate

  operate
    *Abstract* method which will do the operation of the term. Must be
    overridden by derived classes.

  op
    Returns the name of the executed operation.

  left
    Returns the left operand (if any).

  right
    Returns the right operand (if any).

  DESTROY
    Destroys the term and undefines the weak reference to the owner as well
    as the stored operation, the left and the right operand.

NAME
    SQL::Statement::Operation::Neg - negate operation

SYNOPSIS
      # create an <not> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and B<no> right operand
      my $term = SQL::Statement::Neg->new( $owner, $op, $left, undef );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Neg

INHERITANCE
      SQL::Statement::Operation::Neg
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Return the logical negated value of the left operand.

NAME
    SQL::Statement::Operation::And - and operation

SYNOPSIS
      # create an C<and> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::And->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::And implements the logical "and" operation
    between two terms.

INHERITANCE
      SQL::Statement::Operation::And
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Return the result of the logical "and" operation for the values of the
    left and right operand.

NAME
    SQL::Statement::Operation::Or - or operation

SYNOPSIS
      # create an C<or> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Or->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Or implements the logical "or" operation
    between two terms.

INHERITANCE
      SQL::Statement::Operation::Or
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Return the result of the logical "or" operation for the values of the
    left and right operand.

NAME
    SQL::Statement::Operation::Is - is operation

SYNOPSIS
      # create an C<is> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Is->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Is supports: "IS NULL", "IS TRUE" and "IS
    FALSE". The right operand is always evaluated in boolean context in case
    of "IS TRUE" and "IS FALSE". "IS NULL" returns *true* even if the left
    term is an empty string ('').

INHERITANCE
      SQL::Statement::Operation::Is
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Returns true when the left term is null, true or false - based on the
    requested right value.

NAME
    SQL::Statement::Operation::ANSI::Is - is operation

SYNOPSIS
      # create an C<is> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Is->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::ANSI::Is supports: "IS NULL", "IS TRUE" and
    "IS FALSE". The right operand is always evaluated in boolean context in
    case of "IS TRUE" and "IS FALSE". "IS NULL" returns *true* if the right
    term is not defined, *false* otherwise.

INHERITANCE
      SQL::Statement::Operation::Is
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Returns true when the left term is null, true or false - based on the
    requested right value.

NAME
    SQL::Statement::Operation::Contains - in operation

SYNOPSIS
      # create an C<in> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Contains->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Contains expects the right operand is an
    array of SQL::Statement::Term instances. It checks whether the left
    operand is in the list of the right operands or not like:

      $left->value($eval) ~~ map { $_->value($eval) } @{$right}

INHERITANCE
      SQL::Statement::Operation::Contains
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Returns true when the left term is equal to any of the right terms

NAME
    SQL::Statement::Operation::Between - between operation

SYNOPSIS
      # create an C<between> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Between->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Between expects the right operand is an array
    of 2 SQL::Statement::Term instances. It checks whether the left operand
    is between the right operands like:

         ( $left->value($eval) >= $right[0]->value($eval) )
      && ( $left->value($eval) <= $right[1]->value($eval) )

INHERITANCE
      SQL::Statement::Operation::Between
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Returns true when the left term is between both right terms

NAME
    SQL::Statement::Operation::Equality - abstract base class for
    comparisons

SYNOPSIS
      # create an C<equality> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Equality->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Equality implements compare operations
    between two terms - choosing either numerical comparison or string
    comparison, depending whether both operands are numeric or not.

INHERITANCE
      SQL::Statement::Operation::Equality
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Return the result of the comparison.

  numcmp
    *Abstract* method which will do the numeric comparison of both terms.
    Must be overridden by derived classes.

  strcmp
    *Abstract* method which will do the string comparison of both terms.
    Must be overridden by derived classes.

NAME
    SQL::Statement::Operation::Equal - implements equal operation

SYNOPSIS
      # create an C<equal> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Equal->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Equal implements compare operations between
    two numbers and two strings.

INHERITANCE
      SQL::Statement::Operation::Equal
      ISA SQL::Statement::Operation::Equality
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  numcmp
    Return true when "$left == $right"

  strcmp
    Return true when "$left eq $right"

NAME
    SQL::Statement::Operation::NotEqual - implements not equal operation

SYNOPSIS
      # create an C<not equal> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::NotEqual->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::NotEqual implements negated compare
    operations between two numbers and two strings.

INHERITANCE
      SQL::Statement::Operation::NotEqual
      ISA SQL::Statement::Operation::Equality
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  numcmp
    Return true when "$left != $right"

  strcmp
    Return true when "$left ne $right"

NAME
    SQL::Statement::Operation::Lower - implements lower than operation

SYNOPSIS
      # create an C<lower than> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Lower->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Lower implements lower than compare
    operations between two numbers and two strings.

INHERITANCE
      SQL::Statement::Operation::Lower
      ISA SQL::Statement::Operation::Equality
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  numcmp
    Return true when "$left < $right"

  strcmp
    Return true when "$left lt $right"

NAME
    SQL::Statement::Operation::Greater - implements greater than operation

SYNOPSIS
      # create an C<greater than> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Greater->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Greater implements greater than compare
    operations between two numbers and two strings.

INHERITANCE
      SQL::Statement::Operation::Greater
      ISA SQL::Statement::Operation::Equality
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  numcmp
    Return true when $left $right>

  strcmp
    Return true when "$left gt $right"

NAME
    SQL::Statement::Operation::LowerEqual - implements lower equal operation

SYNOPSIS
      # create an C<lower equal> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::LowerEqual->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::LowerEqual implements lower equal compare
    operations between two numbers and two strings.

INHERITANCE
      SQL::Statement::Operation::LowerEqual
      ISA SQL::Statement::Operation::Equality
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  numcmp
    Return true when "$left <= $right"

  strcmp
    Return true when "$left le $right"

NAME
    SQL::Statement::Operation::GreaterEqual - implements greater equal
    operation

SYNOPSIS
      # create an C<greater equal> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::GreaterEqual->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::GreaterEqual implements greater equal compare
    operations between two numbers and two strings.

INHERITANCE
      SQL::Statement::Operation::GreaterEqual
      ISA SQL::Statement::Operation::Equality
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  numcmp
    Return true when $left = $right>

  strcmp
    Return true when "$left ge $right"

NAME
    SQL::Statement::Operation::Regexp - abstract base class for comparisons
    based on regular expressions

SYNOPSIS
      # create an C<regexp> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Regexp->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Regexp implements the comparisons for the
    "LIKE" operation family.

INHERITANCE
      SQL::Statement::Operation::Regexp
      ISA SQL::Statement::Operation
        ISA SQL::Statement::Term

METHODS
  operate
    Return the result of the comparison.

  right
    Returns the regular expression based on the right term. The right term
    is expected to be constant - so "a LIKE b" in not supported.

  regexp
    *Abstract* method which must return a regular expression ("qr//") from
    the given string. Must be overridden by derived classes.

NAME
    SQL::Statement::Operation::Like - implements the like operation

SYNOPSIS
      # create an C<like> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Like->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Like is used to the comparisons for the
    "LIKE" operation.

INHERITANCE
      SQL::Statement::Operation::Like
      ISA SQL::Statement::Operation::Regexp
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  regexp
    Returns "qr/^$right$/s"

NAME
    SQL::Statement::Operation::Clike - implements the clike operation

SYNOPSIS
      # create an C<clike> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::Clike->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::Clike is used to the comparisons for the
    "CLIKE" operation.

INHERITANCE
      SQL::Statement::Operation::Clike
      ISA SQL::Statement::Operation::Regexp
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  regexp
    Returns "qr/^$right$/si"

NAME
    SQL::Statement::Operation::RLike - implements the rlike operation

SYNOPSIS
      # create an C<rlike> operation with an SQL::Statement object as owner,
      # specifying the operation name, the left and the right operand
      my $term = SQL::Statement::RLike->new( $owner, $op, $left, $right );
      # access the result of that operation
      $term->value( $eval );

DESCRIPTION
    SQL::Statement::Operation::RLike is used to the comparisons for the
    "RLIKE" operation.

INHERITANCE
      SQL::Statement::Operation::RLike
      ISA SQL::Statement::Operation::Regexp
        ISA SQL::Statement::Operation
          ISA SQL::Statement::Term

METHODS
  regexp
    Returns "qr/$right$/s"

AUTHOR AND COPYRIGHT
    Copyright (c) 2009-2020 by Jens Rehsack: rehsackATcpan.org

    All rights reserved.

    You may distribute this module under the terms of either the GNU General
    Public License or the Artistic License, as specified in the Perl README
    file.


Generated by phpMan Author: Che Dong On Apache Under GNU General Public License - MarkDown Format
2026-05-23 08:35 @216.73.217.24 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!

^_back to top