TechNet
Products
IT Resources
Downloads
Training
Support
Products
Windows
Windows Server
System Center
Microsoft Edge
Office
Office 365
Exchange Server
SQL Server
SharePoint Products
Skype for Business
See all products »
Resources
Channel 9 Video
Evaluation Center
Learning Resources
Microsoft Tech Companion App
Microsoft Technical Communities
Microsoft Virtual Academy
Script Center
Server and Tools Blogs
TechNet Blogs
TechNet Flash Newsletter
TechNet Gallery
TechNet Library
TechNet Magazine
TechNet Wiki
Windows Sysinternals
Virtual Labs
Solutions
Networking
Cloud and Datacenter
Security
Virtualization
Updates
Service Packs
Security Bulletins
Windows Update
Trials
Windows Server 2016
System Center 2016
Windows 10 Enterprise
SQL Server 2016
See all trials »
Related Sites
Microsoft Download Center
Microsoft Evaluation Center
Drivers
Windows Sysinternals
TechNet Gallery
Training
Expert-led, virtual classes
Training Catalog
Class Locator
Microsoft Virtual Academy
Free Windows Server 2012 courses
Free Windows 8 courses
SQL Server training
Microsoft Official Courses On-Demand
Certifications
Certification overview
Special offers
MCSE Cloud Platform and Infrastructure
MCSE: Mobility
MCSE: Data Management and Analytics
MCSE Productivity
Other resources
Microsoft Events
Exam Replay
Born To Learn blog
Find technical communities in your area
Azure training
Official Practice Tests
Support options
For business
For developers
For IT professionals
For technical support
Support offerings
More support
Microsoft Premier Online
TechNet Forums
MSDN Forums
Security Bulletins & Advisories
Not an IT pro?
Microsoft Customer Support
Microsoft Community Forums
Sign in
Home
Library
Wiki
Learn
Gallery
Downloads
Support
Forums
Blogs
Resources For IT Professionals
United States (English)
Россия (Pусский)
中国(简体中文)
Brasil (Português)
Skip to locale bar
Editing: SQL Server Spatial : STContains (id-ID)
Wiki
>
TechNet Articles
>
SQL Server Spatial : STContains (id-ID)
Article
History
Title
<html> <body> <p>bekerja dgn type data Spatial ternyata sungguh mengasyikkan bahkan jika diperkaya dengan aplikasi yang berbasis GIS tentunya akan lebih seru lagi dan jika anda beruntung akan menghasilkan tambahan project yang berarti menambah penghasilan :)</p> <p>disini saya akan coba demokan bagaimana menggunakan salah satu Open Geospatial Consortium (OGC) methods yang ada di SQL Server Spatial yaitu STContains.</p> <p>Method STContains itu digunakan untuk memeriksa apakah sebuah instance Geometry/Geography itu mengandung instance yang lain.</p> <p>untuk memperjelasnya saya akan membuat menjadi lebih terang dengan membuat sebuah kasus seperti ini dibawah ini. (<em>SQL Server yang digunakan adalah versi SQL Server 2008 keatas</em>)</p> <p>Saya memiliki data beberapa polygon yang menggambarkan batasan-batasan kecamatan yang ada di kota Banjarmasin <br> <br> <a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/6457.kecamatan.png"><img alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/6457.kecamatan.png" style="border-width:0px; border-style:solid"></a><br> <br> </p> <p>untuk data polygonnya silahkan download disini : <a title="http://sdrv.ms/17AzONo" href="http://sdrv.ms/17AzONo"> http://sdrv.ms/17AzONo</a></p> <p>Karena data yang ada di <a title="http://sdrv.ms/17AzONo" href="http://sdrv.ms/17AzONo"> http://sdrv.ms/17AzONo</a> dalam bentuk WKT, maka anda saat menyimpannya ke dalam field type data Geomtry harus merubahnya ke type data tersebut dengan cara sebagai berikut :</p> <p>misal polygon Kecamatan A adalah sebagai berikut : 'POLYGON ((5 5, 10 5, 10 10, 5 5)) maka cara merubahnya ke type geometry adalah :</p> <div class="reCodeBlock" style="border:1px solid #7f9db9; overflow-y:auto"> <div style="background-color:#ffffff"><span style="margin-left:0px!important"><code style="color:#006699; font-weight:bold">DECLARE</code> <code style="color:#000000">@g geometry; </code></span></div> <div style="background-color:#f8f8f8"><span style="margin-left:0px!important"><code style="color:#006699; font-weight:bold">SET</code> <code style="color:#000000">@g = geometry::STPolyFromText(</code><code style="color:blue">'POLYGON ((5 5, 10 5, 10 10, 5 5))'</code><code style="color:#000000">, 32750);</code></span></div> <div style="background-color:#ffffff"><span style="margin-left:0px!important"><code style="color:#006699; font-weight:bold">SELECT</code> <code style="color:#000000">@g</code></span></div> </div> <br> <p>dikarenakan projection kota kalimantan selatan berada di UTM 84 50S maka srid yang digunakan adalah 32750.</p> <p>masukkan informasi polygon 5 kecamatan tersebut kedalam sebuah tabel bernama BATAS_KCMT sehingga datanya akan tampak seperti berikut apabila sudah diletakkan di dalam tabel :</p> <p>Tabel <strong>BATAS_KCMT</strong> terdiri dari Field <strong>Kecamatan</strong> (Varchar(25)) dan Field <strong>GEOM</strong> (Geometry)</p> <a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/8206.kecamatan2.png"><img alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/8206.kecamatan2.png" style="border-width:0px; border-style:solid"></a><br> <br> <p>kemudian saya mempunyai sebuah polygon yang mewakili salah satu rumah penduduk Banjarmasin (kita beri nama: <strong>RUMAH A</strong>) dengan polygon sebagai berikut :</p> <p>POLYGON ((236221.822271232 9629626.31999697, <br> 236230.529811861 9629631.1887976, <br> 236233.269523893 9629626.28866855, <br> 236224.823287023 9629621.56629154, <br> 236221.822271232 9629626.31999697))</p> <p>Pertanyaannya adalah<strong> berada di kecamatan apakah RUMAH A tersebut ?</strong></p> <p>maka cara menjawabnya adalah dengan menjalankan Query berikut :</p> <div class="reCodeBlock" style="border:1px solid #7f9db9; overflow-y:auto"> <div style="background-color:#ffffff"><span style="margin-left:0px!important"><code style="color:#006699; font-weight:bold">declare</code> <code style="color:#000000">@g Geometry</code></span></div> <div style="background-color:#f8f8f8"><span style="margin-left:0px!important"><code style="color:#006699; font-weight:bold">SET</code> <code style="color:#000000">@g = geometry::STPolyFromText(</code><code style="color:blue">'POLYGON ((236221.822271232 9629626.31999697, </code></span></div> <div style="background-color:#ffffff"><span style="margin-left:0px!important"><code style="color:blue">236230.529811861 9629631.1887976, </code></span></div> <div style="background-color:#f8f8f8"><span style="margin-left:0px!important"><code style="color:blue">236233.269523893 9629626.28866855, </code></span></div> <div style="background-color:#ffffff"><span style="margin-left:0px!important"><code style="color:blue">236224.823287023 9629621.56629154, </code></span></div> <div style="background-color:#f8f8f8"><span style="margin-left:0px!important"><code style="color:blue">236221.822271232 9629626.31999697))'</code><code style="color:#000000">, 32750)</code></span></div> <div style="background-color:#ffffff"><span style="margin-left:0px!important"><code style="color:#006699; font-weight:bold">select</code> <code style="color:#000000">kecamatan </code><code style="color:#006699; font-weight:bold">from</code> <code style="color:#000000">PDAMPROD.BATAS_KCMT </code><code style="color:#006699; font-weight:bold">where</code> <code style="color:#000000">geom.MakeValid().STContains(@g) =1 </code></span></div> </div> <br> dan jawabannya adalah <strong>BANJARMASIN TIMUR</strong>.<br> <br> <a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/3782.kecamatan3.png"><img alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x0/__key/communityserver-wikis-components-files/00-00-00-00-05/3782.kecamatan3.png" style="border-width:0px; border-style:solid"></a><br> <br> <p>jadi method STContains berdasarkan kasus diatas memiliki kemampuan untuk memeriksa sebuah instance atau lebih apakah mengandung instance tertentu atau tidak.</p> <p>Demikian, semoga bermanfaat.</p> <br> <br> </body> </html>
Comment
Tags
Please add 3 and 2 and type the answer here: