SQL::Statement::Operation(3pm) User Contributed Perl Documentation SQL::Statement::Operation(3pm) 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. perl v5.30.3 2020-10-23 SQL::Statement::Operation(3pm)
Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache
Under GNU General Public License
2025-01-15 04:42 @3.133.131.180 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)