diff options
| -rw-r--r-- | challenge-206/luca-ferrari/postgresql/ch-1.sql | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/challenge-206/luca-ferrari/postgresql/ch-1.sql b/challenge-206/luca-ferrari/postgresql/ch-1.sql new file mode 100644 index 0000000000..3165bc3a97 --- /dev/null +++ b/challenge-206/luca-ferrari/postgresql/ch-1.sql @@ -0,0 +1,37 @@ +-- +-- Perl Weekly Challenge 206 +-- Task 1 +-- +-- See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-206/> +-- + +CREATE SCHEMA IF NOT EXISTS pwc206; + +CREATE OR REPLACE FUNCTION +pwc206.task1_plpgsql( t text[] ) +RETURNS time +AS $CODE$ + +DECLARE + m time; + t1 text; + t2 text; +BEGIN + + FOREACH t1 IN ARRAY t LOOP + FOREACH t2 IN ARRAY t LOOP + IF t1 = t2 THEN + CONTINUE; + END IF; + + IF m IS NULL OR ( t2::time - t1::time ) < m THEN + m := ( t2::time - t1::time ); + END IF; + + END LOOP; + END LOOP; + + RETURN m; +END +$CODE$ --foo +LANGUAGE plpgsql; |
