NAME
Fey::Role::SetOperation - A role for things that are a set operation
VERSION
version 0.44
SYNOPSIS
use Moose 2.1200;
with 'Fey::Role::SetOperation' => { keyword => $keyword };
DESCRIPTION
Classes which do this role represent a query which can include multiple SELECT queries or set operations.
PARAMETERS
keyword
The SQL keyword for this set operation (i.e. UNION, INTERSECT, EXCEPT).
METHODS
This role provides the following methods, where $keyword is the keyword parameter, above:
$query->$keyword()
$union->union($select1, $select2, $select3);
$union->union($select, $except->except($select2, $select3));
Adds SELECT queries or set operations to the list of queries that this set operation includes.
A set operation must include at least two queries, so the first time this is called, at least two arguments must be provided; subsequent calls do not suffer this constraint.
$query->all()
Sets whether or not ALL is included in the SQL for this set operation (e.g. UNION ALL).
$query->is_all()
Returns true if $query->all() has previously been called.
$query->keyword_clause()
Returns the SQL keyword and possible ALL for this set operation.
$query->${keyword}_clause()
print $query->union_clause();
Returns each of the selects for this set operation, joined by the keyword_clause.
ROLES
This class includes Fey::Role::SQL::HasOrderByClause, Fey::Role::SQL::HasLimitClause, and Fey::Role::SQL::HasAliasName.
BUGS
See Fey for details on how to report bugs.
Bugs may be submitted at https://github.com/ap/Fey/issues.
SOURCE
The source code repository for Fey can be found at https://github.com/ap/Fey.
AUTHOR
Dave Rolsky <autarch@urth.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2011 - 2025 by Dave Rolsky.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)
The full text of the license can be found in the LICENSE file included with this distribution.