Я хотел бы взять большой стол и разбить на более мелкие. У меня есть следующий фрагмент кода, который работает путем ручной замены "NAME"
уникальным именем в ui00000bvbb.lad15nm
:
CREATE TABLE "NAME" AS
SELECT parcels_all_shapefile.* AS parcels
FROM ui00000bvbb INNER JOIN parcels_all_shapefile ON ST_Intersects(ui00000bvbb.wkb_geometry, parcels_all_shapefile.wkb_geometry)
WHERE ui00000bvbb.lad15nm = "NAME")
У меня вопрос, как я могу просмотреть список имен и заполнить приведенный выше код? Я пробовал следующее, но это не работает:
DO
$do$
DECLARE
m varchar[];
arr varchar[] := array[['Barnet'],['Westminster']];
BEGIN
FOREACH m SLICE 1 IN ARRAY arr
LOOP
CREATE TABLE m AS
SELECT parcels_all_shapefile.* AS parcels
FROM ui00000bvbb INNER JOIN parcels_all_shapefile ON ST_Intersects(ui00000bvbb.wkb_geometry, parcels_all_shapefile.wkb_geometry)
WHERE ui00000bvbb.lad15nm = m)
END LOOP;
END
$do$