Manpage logo

Mojo::Pg::Results - Results

NAME  SYNOPSIS  DESCRIPTION  ATTRIBUTES  db  sth  METHODS  array  arrays  columns  expand  finish  hash  hashes  new  rows  text  SEE ALSO 

NAME

Mojo::Pg::Results − Results

SYNOPSIS

use Mojo::Pg::Results;
my $results = Mojo::Pg::Results−>new(sth => $sth);
$results−>hashes−>map(sub { $_−>{foo} })−>shuffle−>join("\n")−>say;

DESCRIPTION

Mojo::Pg::Results is a container for DBD::Pg statement handles used by Mojo::Pg::Database.

ATTRIBUTES

Mojo::Pg::Results implements the following attributes.

db

my $db = $results−>db;
$results = $results−>db(Mojo::Pg::Database−>new);

Mojo::Pg::Database object these results belong to.

sth

my $sth = $results−>sth;
$results = $results−>sth($sth);

DBD::Pg statement handle results are fetched from.

METHODS

Mojo::Pg::Results inherits all methods from Mojo::Base and implements the following new ones.

array

my $array = $results−>array;

Fetch one row from "sth" and return it as an array reference.

arrays

my $collection = $results−>arrays;

Fetch all rows from "sth" and return them as a Mojo::Collection object containing array references.

# Process all rows at once
say $results−>arrays−>reduce(sub { $a + $b−>[3] }, 0);

columns

my $columns = $results−>columns;

Return column names as an array reference.

# Names of all columns
say for @{$results−>columns};

expand

$results = $results−>expand;

Decode "json" and "jsonb" fields automatically to Perl values for all rows.

# Expand JSON
$results−>expand−>hashes−>map(sub { $_−>{foo}{bar} })−>join("\n")−>say;

finish

$results−>finish;

Indicate that you are finished with "sth" and will not be fetching all the remaining rows.

hash

my $hash = $results−>hash;

Fetch one row from "sth" and return it as a hash reference.

hashes

my $collection = $results−>hashes;

Fetch all rows from "sth" and return them as a Mojo::Collection object containing hash references.

# Process all rows at once
say $results−>hashes−>reduce(sub { $a + $b−>{money} }, 0);

new

my $results = Mojo::Pg::Results−>new;
my $results = Mojo::Pg::Results−>new(sth => $sth);
my $results = Mojo::Pg::Results−>new({sth => $sth});

Construct a new Mojo::Pg::Results object.

rows

my $num = $results−>rows;

Number of rows.

text

my $text = $results−>text;

Fetch all rows from "sth" and turn them into a table with "tablify" in Mojo::Util.

SEE ALSO

Mojo::Pg, Mojolicious::Guides, <https://mojolicious.org>.


Updated 2026-06-01 - jenkler.se | uex.se