A basic example for you to adapt/enhance as required
poj#!perl use DBI; use strict; use warnings; use Data::Dump 'pp'; my $dbh = get_dbh(); # connect # use hash to group data my %logins=(); my $sql = 'SHOW GRANTS'; my $sth = $dbh->prepare($sql); $sth->execute(); while (my ($result) = $sth->fetchrow_array()) { $result =~ s/['`]//g; if ($result =~ m/GRANT (.+?) ON (.+?) TO (\S+\@\S+)/i){ push @{$logins{$3}{$2}},$1; }; } pp \%logins; # build array from hash my @logins=(); for my $userhost (sort keys %logins){ for my $db (sort keys %{$logins{$userhost}}){ # join into one line here my $grant = join ',',@{$logins{$userhost}{$db}}; my ($user,$host) = split '@',$userhost; push @logins,[$host,$user,$db,$grant]; } } pp \@logins;
In reply to Re: Hurdle with summarizing results from complex data structure related to MySQL result handling
by poj
in thread Hurdle with summarizing results from complex data structure related to MySQL result handling
by hiyall
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |