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

LocateBetween

LocateBetweenÀº ±âÇÏÇÐ ¿ÀºêÁ§Æ®¿Í µÎ °³ÀÇ ÃøÁ¤ À§Ä¡¸¦ ÃëÇϰí, µÎ ÃøÁ¤ À§Ä¡ »çÀÌ¿¡ ¿¬°áÀÌ ´ÜÀýµÈ °æ·ÎÀÇ ¼¼Æ®¸¦ ³ªÅ¸³»´Â ±âÇÏÇÐÀ» ¸®ÅÏÇÕ´Ï´Ù.

±¸¹®

db2gse.LocateBetween(g db2gse.ST_Geometry, [measure] Double, [measure]5 Double)

¸®ÅÏ À¯Çü

db2gse.ST_Geometry

¿¹

´ÙÀ½ÀÇ CREATE TABLE ¸í·É¹®Àº LOCATEBETWEEN_TEST Å×À̺íÀ» ÀÛ¼ºÇÕ´Ï´Ù. LOCATEBETWEEN_TEST¿¡´Â °¢ ÇàÀ» °íÀ¯ÇÏ°Ô ½Äº°ÇÏ´Â GID Ä÷³°ú, »ùÇà ±âÇϸ¦ ÀúÀåÇÏ´Â G1 º¹¼öÇà ½ºÆ®¸µ Ä÷³ÀÌ ÀÖ½À´Ï´Ù.

CREATE TABLE LOCATEBETWEEN_TEST (gid integer, g1 db2gse.ST_Geometry)

´ÙÀ½ INSERT¹®Àº µÎ ÇàÀ» LOCATEBETWEEN_TEST Å×ÀÌºí¿¡ »ðÀÔÇÕ´Ï´Ù. ù¹øÂ° ÇàÀº ´ÙÁß ¼±½ºÆ®¸µÀÌ°í µÎ ¹øÂ°´Â ´ÙÁßÁ¡ÀÔ´Ï´Ù.

INSERT INTO db2gse.LOCATEBETWEEN_TEST
VALUES(1,db2gse.ST_MLineFromText('multilinestring m ((10.29 19.23 5,
                           23.82 20.29 6, 30.19 18.47 7,45.98 20.74 8),
                                          (23.82 20.29 6,30.98 23.98 7,
                                           42.92 25.98 8))',
                      db2gse.coordref()..srid(0)))
 
INSERT INTO db2gse.LOCATEBETWEEN_TEST
VALUES(2, db2gse.ST_MPointFromText('multipoint m (10.29 19.23 5,23.82 20.29 6,
30.19 18.47 7,45.98 20.74 8,23.82 20.29 6,
30.98 23.98 7,42.92 25.98 8)',
                        db2gse.coordref()..srid(0)))

´ÙÀ½ÀÇ SELECT¹®°ú ÇØ´ç °á°ú ¼¼Æ®¿¡¼­´Â LocateBetween ÇÔ¼ö°¡ Ä¡¼ö 6.5¿Í 7.5 Æ÷ÇÔ »çÀÌ¿¡ À§Ä¡ÇÏ´Â Ä¡¼ö¸¦ ã´Â ¹æ¹ýÀ» º¸¿© ÁÝ´Ï´Ù. ù¹øÂ° Çà¿¡¼­´Â ¿©·¯ ¼±½ºÆ®¸µÀÌ µé¾î ÀÖ´Â ´ÙÁß ¼±½ºÆ®¸µÀ» ¸®ÅÏÇÕ´Ï´Ù. µÎ ¹øÂ° Çà¿¡¼­´Â ¼Ò½º µ¥ÀÌÅͰ¡ ´ÙÁßÁ¡À̱⠶§¹®¿¡ ´ÙÁßÁ¡À» ¸®ÅÏÇÕ´Ï´Ù. ¼Ò½º µ¥ÀÌÅÍÀÇ Â÷¿øÀÌ 0(Á¡ ¶Ç´Â ´ÙÁßÁ¡)ÀÏ ¶§´Â ¿ÏÀüÇÏ°Ô ÀÏÄ¡ÇØ¾ß ÇÕ´Ï´Ù.

SELECT gid, CAST(db2gse.ST_AsText(db2gse.LocateBetween (g1,6.5,7.5))
       AS varchar(96)) "Geometry"
FROM LOCATEBETWEEN_TEST
 
GID      Geometry
----------- -------------------------------------------------------------------
          1 MULTILINESTRING M ( 27.01000000 19.38000000 6.50000000, 31.19000000
18.47000000 7.00000000,38.09000000 19.61000000 7.50000000),(27.40000000 22.1400
0000 6.50000000, 30.98000000 23.98000000 7.00000000,36.95000000 24.98000000 7.5
0000000)
          2 MULTIPOINT M ( 30.19000000 18.47000000 7.00000000, 30.98000000 23.9
8000000 7.00000000)
 
  2 record(s) selected. 


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