add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
Help with an interesting Postgres question: Why isn't an Index Only Scan used on a partition accessed via the parent table?.
SET ENABLE_NESTLOOP TO OFF;
WITH RECURSIVE numbers AS (SELECT n FROM generate_series(0,89) gs(n) ),
pixels AS (SELECT rows.n as row, cols.n as col FROM numbers as rows CROSS JOIN numbers as cols WHERE rows.n > 4 AND rows.n < 38 AND cols.n > 9 AND cols.n < 89),
rawRays AS (SELECT row, col, -0.9049::double precision + col * 0.0065 ::double precision + row * 0.0057::double precision as x, -0.1487::double precision + row * -0.0171::double precision as y, 0.6713::double precision + col * 0.0045::double precision + row * -0.0081::double precision as z FROM pixels),
norms AS (SELECT row, col, x, y, z, (1 + x * x + y * y + z * z) / 2 as n FROM rawRays),
rays AS (SELECT row, col, x / n AS x, y / n AS y, z / n AS z FROM norms),
iters AS (SELECT row, col, 0 as it, 0.0::double precision as v FROM rays
UNION ALL SELECT rays.row, rays.col, it + 1 AS it, v + GREATEST(ABS(0.7 +v*x) - 0.3 , ABS(0.7 +v*y) - 0.3 , ABS(-1.1 +v*z) - 0.3 , -(0.28 + ((0.7 +v*x) * (0.7 +v*x) + (0.7 +v*y) * (0.7 +v*y) + (-1.1 +v*z) * (-1.1 +v*z)) / 0.28 ) / 2.0 + 0.42 ) AS v FROM iters JOIN rays ON rays.row = iters.row AND rays.col = iters.col WHERE it < 15),
lastIters AS (SELECT it0.row, it0.col, it0.v AS v0, it1.v AS v1, it2.v AS v2 FROM iters as it0 JOIN iters AS it1 ON it0.col = it1.col AND it0.row = it1.row JOIN iters AS it2 ON it0.col = it2.col AND it0.row = it2.row WHERE it0.it = 15 AND it1.it = 14 AND it2.it = 13),
res AS (SELECT row,col, (v0 - v1) / (v1 - v2) as v FROM lastIters)
SELECT string_agg(substring('████████████▓▓▓▓▓▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌'::text FROM round(1 + GREATEST(0, LEAST(66, v * 67)))::integer FOR 1) || CASE WHEN col=88 THEN E'\n' ELSE '' END, ''::text order by row,col) FROM res;
SET ENABLE_NESTLOOP TO ON;
SET
string_agg
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌░░░░░░░░░░░░░░░░░░░░░░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌░░░░░░░▒▒▒▒▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒▒▒▒▒▒░░░░░░░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌░░░░░░░┌┌░░▒▒▒▓▓▓▓▓▓▓▓████████████┌┌┌┌┌┌┌┌┌▓▒▒▒░░┌┌░░░░░░░░░░░░░░░░
┌┌┌┌┌░░░░░░░░░░░░┌┌┌░▒▒┌┌┌┌┌██████████████┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌░▒░░┌┌┌░░░░░░░░░░░░░░
▒░░░░░░░░░░░░░░░░┌┌┌┌░▒░┌┌┌┌┌┌██████████┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒░┌┌┌┌░░░░░░░░░░░░░┌
▒▒▒▒▒▒▒▒▓▓▓░░░░░░░░░░┌┌┌┌░▓▓▒▒▒███████┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌░▓▒░┌┌┌┌┌░░░░░░░░░░░░░░░░┌
▒▒▒▒▒▒▒▒▒▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌░░░░░░░░░░░░░░░░░░░░░░░┌┌
┌▒▒▒▒▒▒▒▒▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░┌┌┌┌┌┌░░░░┌┌
┌▒▒▒▒▒▒▒▒▒▒▓▓▓┌┌░▒▒▒░┌┌▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░┌┌┌┌░░┌┌░░░░┌┌
┌▒▒▒▒▒▒▒▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░░░░░░┌┌░▒▒▒▒▒▒░░░░┌┌┌
┌┌▒▒▒▒▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░┌┌░▒┌┌┌┌┌┌▒▒░░░┌┌┌
┌┌▒▒▒▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌██▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░┌┌▒┌┌┌┌┌┌┌┌▒▒▒░┌┌┌┌
┌┌▒▒▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌████▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░┌▒┌┌┌┌┌┌┌┌┌┌▓▒░░┌┌┌┌
┌┌┌▒▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌███████▒▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░┌▓┌┌┌┌┌┌┌┌┌┌▓▓▒░┌┌┌┌┌
┌┌┌▒▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌████████████▓▓▓▓▓▓▓▓▓▓▓░░░░░┌▓┌┌┌┌┌┌┌┌┌┌▓▓▓░░┌┌┌┌┌
┌┌┌┌▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌██████████████▓▓▓▓▓▓▓▓▓▓░░░░┌█┌┌┌┌┌┌┌┌██▓▓▓▒░░┌┌┌┌┌
┌┌┌┌▒▒▒░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌█████████████████┌▓▓▓▓▓▓▓░░░░┌▓┌┌┌┌┌██████▓▓▓░░┌┌┌┌┌┌
┌┌┌┌▒▒▒┌░▒┌┌┌┌┌┌┌┌┌┌┌┌┌████████┌┌┌┌┌┌┌┌┌┌┌┌┌┌▓▓▓▓▓▓░░░┌░███████████▓▓▓░░░┌┌┌┌┌┌
┌┌┌┌┌▒▒▒┌░▒▒▓▓┌┌┌█████████┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▓▓▓▓▓▓░░░┌███████████▓▓▓░░░┌┌┌┌┌┌┌
┌┌┌┌┌▒▒▒▒┌░▒▒▒▓▓▓██████┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▓▓▓▓▓▓░░┌░█████████▓▓▓▓░░░░┌┌┌┌┌┌┌
┌┌┌┌┌▒▒▒▒▒▒░░▒▒▓▓▓▓██┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▓▓▓▓▓░░┌▒░┌┌┌███▓▓▓▓▒░░░░░┌┌┌┌┌┌┌
┌┌┌┌┌┌▒▒▒▒▒▒▒░▒▒▒▓▓▓┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▓▓▓▓░░░┌▒┌┌┌┌┌▓▓▓▓▒▒░░░┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌▒▒▒▒▒▒▒▒▒░▒▒▒▓┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▓▓▓▓░░┌┌░░┌┌┌┌▓▒▒▒░░░┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌▒▒▒▒▒▒▒▒▒░░▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▓▓▓▓▓░░░┌┌░▒▒▒▒▒░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒▒▒▒▒▒░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌░▓▓▓▓▓▓░░░┌┌┌┌░░░┌░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒▒▒▒┌┌░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▓▓▓▓▓▓▓░░░░░┌┌┌░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒▒▒▒▒┌┌┌┌┌┌┌┌┌┌▒▒▒▒▓▓▓▓▓▓▓░░░░░░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▓▓░░░░░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒▒▒▒▒▒▒▒▒▒▒░░░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒▒▒▒▒▒░░┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌▒▒┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
SELECT 1
SET