use Modern::Perl; use Data::Dump qw /dump/; use SQL::Parser; use SQL::Statement; my $SqlParser = SQL::Parser->new() or die "Could not create an SQL::Parser"; my $parse = SQL::Statement->new('SELECT fie, max(foo), count(baz) FROM bar JOIN fee WHERE foo > 10', $SqlParser); my @columns = $parse->column_defs(); say dump @columns;