2016-05-16 14:47 GMT+03:00 Charles Clavadetscher <clavadetscher@xxxxxxxxxxxx>:
SQL version by Melvin Davidson:
CREATE TABLE elephant
(row_num integer NOT NULL,
row_dat varchar(30) NOT NULL,
CONSTRAINT elephant_pk PRIMARY KEY (row_num)
);
INSERT INTO elephant
(row_num, row_dat)
VALUES
( 1,'+------------------------+'),
( 2,'| ____ ______ ___ |'),
( 3,'| / )/ \/ \ |'),
( 4,'| ( / __ _\ ) |'),
( 5,'| \ (/ o) ( o) ) |'),
( 6,'| \_ (_ ) \ ) _/ |'),
( 7,'| \ /\_/ \)/ |'),
( 8,'| \/ <//| |\\> |'),
( 9,'| _| | |'),
(10,'| \|_/ |'),
(11,'| |'),
(12,'| PostgreSQL 1996-2016 |'),
(13,'| 20 Years of success |'),
(14,'+------------------------+');
SELECT row_dat FROM elephant ORDER BY row_num;
I had a bit of fun with this SQL version and came up with this query:
WITH src(s) AS (
VALUES ('729472967293732174412176b12173b17111752171927491b1744171b17411217181417211718141734172b191721191724173b1714171912175b17221b1912174b1412178b121715122a172a1b2317d91a172a17f71b1a1912177')
), str AS (
SELECT string_agg(repeat(translate(substr(s, p, 1), '123456789ab', '(/>)<+ o_|\'), ('x'||lpad(substr(s, p+1, 1), 8, '0'))::bit(32)::int), '') line
FROM src, generate_series(1, 182, 2) p
)
SELECT substr(line, p, 21) slon FROM str, generate_series(1, 189, 21) p;
Victor Y. Yegorov