นี่คือฟังก์ชั่นส่งคืนST_CreateFishnetที่สร้างกริดรูปหลายเหลี่ยม 2 มิติ
CREATE OR REPLACE FUNCTION ST_CreateFishnet(
        nrow integer, ncol integer,
        xsize float8, ysize float8,
        x0 float8 DEFAULT 0, y0 float8 DEFAULT 0,
        OUT "row" integer, OUT col integer,
        OUT geom geometry)
    RETURNS SETOF record AS
$$
SELECT i + 1 AS row, j + 1 AS col, ST_Translate(cell, j * $3 + $5, i * $4 + $6) AS geom
FROM generate_series(0, $1 - 1) AS i,
     generate_series(0, $2 - 1) AS j,
(
SELECT ('POLYGON((0 0, 0 '||$4||', '||$3||' '||$4||', '||$3||' 0,0 0))')::geometry AS cell
) AS foo;
$$ LANGUAGE sql IMMUTABLE STRICT;
โดยที่nrowและncolเป็นจำนวนแถวและคอลัมน์xsizeและysizeเป็นความยาวของขนาดเซลล์และเป็นทางเลือกx0และy0เป็นพิกัดสำหรับมุมซ้ายล่าง
ผลลัพธ์คือrowและcolตัวเลขเริ่มต้นจาก 1 ที่มุมซ้ายล่างและgeomรูปหลายเหลี่ยมรูปสี่เหลี่ยมผืนผ้าสำหรับแต่ละเซลล์ ตัวอย่างเช่น:
SELECT *
FROM ST_CreateFishnet(4, 6, 10, 10) AS cells;
 row | col |         geom
-----+-----+--------------------------------
   1 |   1 | 0103000000010000000500000000...
   2 |   1 | 0103000000010000000500000000...
   3 |   1 | 0103000000010000000500000000...
   4 |   1 | 0103000000010000000500000000...
   1 |   2 | 0103000000010000000500000000...
   2 |   2 | 0103000000010000000500000000...
   ...
   3 |   6 | 0103000000010000000500000000...
   4 |   6 | 0103000000010000000500000000...
(24 rows)
หรือสร้างคอลเล็กชั่นรูปทรงเรขาคณิตสำหรับตารางแบบเต็ม:
SELECT ST_Collect(cells.geom)
FROM ST_CreateFishnet(4, 6, 10, 10) AS cells;

คุณสามารถเพิ่มx0/ y0กำเนิดชดเชย (ค่าเริ่มต้นเหล่านี้เป็นศูนย์)