NAME
DB::Object::IN - IN Operator Object
SYNOPSIS
my $op = $dbh->IN( 1, 2, 3 );
# will produce:
IN ( 1, 2, 3 )
"'something'" == $dbh->IN( qw( some other words ) );
# 'something' IN ( some, other, words );
"something" != $dbh->IN( qw( some other words ) );
# 'something' NOT IN ( some, other, words );
my $tbl = $dbh->my_table || die( $dbh->error );
$tbl->as( 't' );
my $sth = $tbl->select( 'DISTINCT field' );
my $sql = $tbl->fo->somefield == $dbh->IN( $sth );
say $sql;
# t.somefield IN (SELECT DISTINCT t.field FROM my_table t)
DESCRIPTION
This is the IN
object class inheriting from DB::Object::Operator
METHODS
new
Takes a list of values that are saved in the newly created object returned.
as_string
Returns a string representation of this operator.
For example:
$dbh->IN( qw( some other words ) );
# IN ( some, other, words );
operator
Returns IN
value
In list context, returns an array of those values passed to "new" and in scalar context, it returns those value as array reference.
OVERLOADING
Objects for this class have their ==
and !=
operators overloaded.
When overloading is called, it returns a new DB::Object::Expression that represents the formatted statement.
SEE ALSO
https://www.postgresql.org/docs/current/functions-subquery.html#FUNCTIONS-SUBQUERY-IN
https://www.postgresql.org/docs/current/functions-comparisons.html#FUNCTIONS-COMPARISONS-IN-SCALAR
https://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html#operator_in
https://www.sqlite.org/lang_expr.html#the_in_and_not_in_operators
AUTHOR
Jacques Deguest <jack@deguest.jp>
COPYRIGHT & LICENSE
Copyright (c) 2023 DEGUEST Pte. Ltd.
You can use, copy, modify and redistribute this package and associated files under the same terms as Perl itself.