»ç¿ëÀÚ ¾È³» ¹× ÂüÁ¶¼­

ST_Difference

ST_Difference´Â µÎ °³ÀÇ ±âÇÏÇÐ ¿ÀºêÁ§Æ®¸¦ ÃëÇÏ¿© ¼Ò½º ¿ÀºêÁ§Æ®¿Í Â÷À̰¡ ÀÖ´Â ±âÇÏÇÐ ¿ÀºêÁ§Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. ST_DifferenceÀÇ µÎ ÀÔ·Â ±âÇÏ´Â Ä¡¼ö°¡ °°¾Æ¾ß ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ³ÎÀÌ ¸®Åϵ˴ϴÙ.

±¸¹®

db2gse.ST_Difference(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)

¸®ÅÏ À¯Çü

db2gse.ST_Geometry

¿¹

µµ½Ã °øÇÐÀÚ´Â ºôµù¿¡¼­ ´Ù·çÁö ¾Ê´Â µµ½Ã ±¸È¹ ¿µ¿ªÀÇ ÃÑ ¿ª¿ªÀ» ¾Ë°í ÀÖ¾î¾ß ÇÕ´Ï´Ù. Áï, µµ½Ã °øÇÐÀÚ´Â ºôµù ¿µ¿ªÀ» Á¦°ÅÇÑ ÀÌÈÄÀÇ ±¸È¹ ¿µ¿ª ÇÕÀ» ¿øÇÕ´Ï´Ù.

CREATE TABLE BUILDINGFOOTPRINTS (building_id integer,
                                 lot_id      integer,
                                 footprint   db2gse.ST_MultiPolygon);
 
CREATE TABLE LOTS ( lot_id  integer,
                   lot     db2gse.ST_MultiPolygon);

µµ½Ã °øÇÐÀÚ´Â lot_id¿¡ ´ëÇÑ BUILDINGFOOTPRINTS ¹× LOTS Å×À̺íÀ» °áÇÕÇÕ´Ï´Ù. ±×·± ´ÙÀ½, °øÇÐÀÚ´Â ±¸È¹¿¡¼­ ºôµù À§Ä¡¸¦ »« Â÷ÀÌ ¿µ¿ªÀÇ ÇÕÀ» ÃëÇÕ´Ï´Ù.

SELECT SUM(db2gse.ST_Area(db2gse.ST_Difference(lot,footprint)))
  FROM BUILDINGFOOTPRINTS bf, LOTS
WHERE bf.lot_id = LOTS.lot_id; 


[ ÆäÀÌÁöÀÇ ¸Ç À§ | ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ | »öÀÎ ]