aboutsummaryrefslogtreecommitdiff
path: root/challenge-197/luca-ferrari/postgresql/ch-1.plperl
blob: b1c1ac7c4cb95448a24a730bfc245eedccb66540 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
-- Perl Weekly Challenge 197
-- Task 1

CREATE SCHEMA IF NOT EXISTS pwc197;

/*
estdb=> select pwc197.task1_plperl( array[1,2,3,0,4,5,0,9,0,10]::int[] );
      task1_plperl      
------------------------
 {1,2,3,4,5,9,10,0,0,0}

*/

CREATE OR REPLACE FUNCTION
pwc197.task1_plperl( int[] )
RETURNS int[]
AS $CODE$
my ( $list ) = @_;
my @sorted = ( grep( { $_ != 0 } $list->@* ),
               grep( { $_ == 0 } $list->@* ) );
return [ @sorted ];	       
$CODE$
LANGUAGE plperl;