class FluentQuery::Drivers::Shared::Tokens::SQL::Union
Generic SQL
query UNION token.
Public Instance Methods
render!(mode = nil)
click to toggle source
Renders this token.
# File lib/fluent-query/drivers/shared/tokens/sql/union.rb, line 24 def render!(mode = nil) result = "" @_subtokens.each do |token| arguments = token.arguments # SET token if token.name == :union length = arguments.length # Checks for arguments if length >= 2 queries = [ ] arguments.each do |argument| if argument.string? queries << argument elsif argument.kind_of? FluentQuery::Query queries << argument.build! end end else raise FluentQuery::Drivers::Exception::new("UNION token expects at least two queries or strings as arguments.") end end end # Process stack with results queries.map! { |i| @_driver.quote_subquery(i) } result << queries.join(" UNION ") return result end