{"id":50669,"date":"2017-09-27T00:00:00","date_gmt":"2017-09-27T07:00:00","guid":{"rendered":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/"},"modified":"2025-11-14T07:53:35","modified_gmt":"2025-11-14T15:53:35","slug":"using-geometry-values-griddb","status":"publish","type":"post","link":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/","title":{"rendered":"GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528"},"content":{"rendered":"<h2 id=\"intro\">\u306f\u3058\u3081\u306b<\/h2>\n<p>\u30c7\u30fc\u30bf\u306f\u6642\u9593\u7684\u306b\u3082\u7a7a\u9593\u7684\u306b\u3082\u69d8\u3005\u306a\u5f62\u5f0f\u3067\u63d0\u4f9b\u3055\u308c\u307e\u3059\u3002GridDB\u306e\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u30b3\u30f3\u30c6\u30ca\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3067\u3001TQL\u304a\u3088\u3073\u6642\u9593\u7279\u6709\u306eAPI\u64cd\u4f5c\u3068\u3068\u3082\u306b\u3001\u30c7\u30fc\u30bf\u306e\u6642\u9593\u7684\u5074\u9762\u3092\u30ab\u30d0\u30fc\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 GridDB\u306eStandard Edition\u3068Advanced Edition\u3067\u306f\u5730\u7406\u7a7a\u9593\u30c7\u30fc\u30bf\u3082\u30ab\u30d0\u30fc\u3055\u308c\u307e\u3059\u3002<b>\u30b8\u30aa\u30e1\u30c8\u30ea\u306e\u5217\u3068\u30c7\u30fc\u30bf\u578b<\/b>\u3001TQL\u306b\u3088\u308b\u7279\u6b8a\u306a<b>\u30b8\u30aa\u30e1\u30c8\u30ea\u6f14\u7b97<\/b>\u3001C API\u3068Java API\u306b\u3088\u308b\u30b5\u30dd\u30fc\u30c8\u304c\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>GridDB\u3067\u306f\u3001\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u3092\u4f5c\u6210\u3057\u30665\u3064\u306e\u4e00\u822c\u7684\u306a\u30e2\u30c7\u30eb\u3084\u56f3\u5f62\u3092\u8868\u73fe\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<h3 id=\"point\">POINT<\/h3>\n<p>2\u6b21\u5143\u307e\u305f\u306f3\u6b21\u5143\u7a7a\u9593\u306e\u5ea7\u6a19\u70b9\u306e\u3053\u3068\u3067\u3059\u3002<\/p>\n<p><b>2D and 3D Points<\/b><\/p>\n<pre class=\"prettyprint\">Geometry point = Geometry.valueOf(\"POINT(1 3.4)\");\nGeometry threeDPt = Geometry.valueOf(\"POINT(2 -3 0.43)\");\n<\/pre>\n<p><img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/griddb.net\/wp-content\/uploads\/2017\/09\/points-281x300.png\" alt=\"points\" width=\"281\" height=\"300\" class=\"alignnone size-medium wp-image-16863\" srcset=\"\/wp-content\/uploads\/2017\/09\/points-281x300.png 281w, \/wp-content\/uploads\/2017\/09\/points.png 556w\" sizes=\"(max-width: 281px) 100vw, 281px\" \/><\/p>\n<h3 id=\"linestring\">LINESTRING<\/h3>\n<p>2\u6b21\u5143\u307e\u305f\u306f3\u6b21\u5143\u7a7a\u9593\u5185\u306e1\u3064\u4ee5\u4e0a\u306e<i>\u76f8\u4e92\u63a5\u7d9a\u3055\u308c\u305f<\/i>\u7dda\u306e\u96c6\u5408\u3092Linestring\u3068\u3044\u3044\u307e\u3059\u3002 \u305d\u308c\u3089\u306f2\u3064\u4ee5\u4e0a\u306e\u70b9\u306b\u3088\u3063\u3066\u8868\u3055\u308c\u307e\u3059\u3002<br \/>\n<img decoding=\"async\" src=\"https:\/\/griddb.net\/wp-content\/uploads\/2017\/09\/linestrings-1.png\" alt=\"\" width=\"679\" height=\"297\" class=\"alignnone size-full wp-image-17363\" srcset=\"\/wp-content\/uploads\/2017\/09\/linestrings-1.png 679w, \/wp-content\/uploads\/2017\/09\/linestrings-1-300x131.png 300w\" sizes=\"(max-width: 679px) 100vw, 679px\" \/><\/p>\n<h3 id=\"polygon\">POLYGON<\/h3>\n<p>2\u6b21\u5143\u307e\u305f\u306f3\u6b21\u5143\u7a7a\u9593\u306e\u9589\u9818\u57df\u3092Polyogon\u3068\u3044\u3044\u307e\u3059\u3002 \u3053\u306e\u9818\u57df\u306f\u3001\u958b\u59cb\u70b9\u307e\u305f\u306f<code>VERTEX<\/code>\u304b\u3089\u7aef\u70b9\u306b\u63a5\u7d9a\u3055\u308c\u3001\u958b\u59cb\u70b9\u306b\u623b\u308b3\u3064\u4ee5\u4e0a\u306e\u70b9\u3067\u69cb\u6210\u3055\u308c\u307e\u3059\u3002 \u5916\u5074\u306e\u9818\u57df\u304b\u3089\u9664\u5916\u3059\u308b\u5185\u90e8\u9818\u57df\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u3001\u30e2\u30c7\u30eb\u306e\u4e00\u90e8\u3067\u306f\u306a\u3044\u30ae\u30e3\u30c3\u30d7\u307e\u305f\u306f\u30a2\u30a4\u30e9\u30f3\u30c9\u3092\u6301\u3064\u8868\u9762\u307e\u305f\u306f\u9818\u57df\u3092\u6301\u3064\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><b>2D Polygon<\/b><\/p>\n<pre class=\"prettyprint\">Geometry polygon = Geometry.valueOf(\"POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))\");\n<\/pre>\n<p><b>3D Polygon<\/b><\/p>\n<pre class=\"prettyprint\">Geometry threeDSurface = Geometry.valueOf(\"POLYGON((0 0 0, 1 0 1, 1 1 1, 0 1 0, 0 0 0))\");\n<\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/griddb.net\/wp-content\/uploads\/2017\/09\/rsz_polygons.png\" alt=\"example-polygons\" width=\"549\" height=\"168\" class=\"alignnone size-full wp-image-17173\" srcset=\"\/wp-content\/uploads\/2017\/09\/rsz_polygons.png 549w, \/wp-content\/uploads\/2017\/09\/rsz_polygons-300x92.png 300w\" sizes=\"(max-width: 549px) 100vw, 549px\" \/><\/p>\n<h3 id=\"polyhedralsurface\">POLYHEDRALSURFACE<\/h3>\n<p><code>POLYHEDRALSURFACE<\/code>\u306f\u3001<i>\u9802\u70b9\u3001\u30a8\u30c3\u30b8\u3001\u304a\u3088\u3073\u9762<\/i>\u3067\u69cb\u6210\u3055\u308c\u307e\u3059\u3002 \u30b7\u30f3\u30d7\u30eb\u306a\u56db\u9762\u4f53\u3001\u591a\u9762\u4f53\u3001\u516b\u9762\u4f53\u306e\u4f8b <i>POLYHEDRALSURFACE<\/i>\u306f3\u6b21\u5143\u5f62\u72b6\u306b\u3057\u304b\u306a\u308a\u307e\u305b\u3093\u3002 \u3064\u307e\u308a\u3001\u30a8\u30c3\u30b8\u3092\u69cb\u6210\u3059\u308b\u3059\u3079\u3066\u306e\u70b9\u306b<b>3\u3064\u306e\u5ea7\u6a19<\/b>\u304c\u542b\u307e\u308c\u3066\u3044\u308b\u306f\u305a\u3067\u3059\u3002 \u591a\u9762\u4f53\u306e\u8868\u9762\u306f\u3001\u305d\u306e\u9762\u304c\u9589\u3058\u305f\u591a\u89d2\u5f62\u306e\u8868\u9762\u3067\u69cb\u6210\u3055\u308c\u308b\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u56f2\u3080\u3053\u3068\u304c\u3067\u304d\u308b\u3068\u3044\u3046\u70b9\u3067\u3001<i>POLYGON<\/i>\u306e\u5b8c\u5168\u306a3\u6b21\u5143\u62e1\u5f35\u3068\u8003\u3048\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><b>Example<\/b><\/p>\n<pre class=\"prettyprint\">Geometry polySurface = Geometry.valueOf(  \n\"POLYHEDRALSURFACE ( ((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)),\" \n+ \"((0 0 0, 0 1 0, 0 1 1, 0 0 1, 0 0 0 )),\" \n+ \"((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)),\" + \n\"((1 1 1, 1 0 1, 0 0 1, 0 1 1, 1 1 1)) ,\" + \n\"((1 1 1, 1 0 1, 1 0 0, 1 1 0, 1 1 1)),\" + \n\"((1 1 1, 1 1 0, 0 1 0, 0 1 1, 1 1 1)) )\");\n<\/pre>\n<p>\u3059\u3079\u3066\u306e\u5ea7\u6a19\u30bb\u30c3\u30c8\u306f\u3001\u4e09\u6b21\u5143\u306e\u56f2\u307e\u308c\u305f\u8868\u9762\u306e\u4e00\u90e8\u3092\u69cb\u6210\u3059\u308b\u9589\u3058\u305f\u9762\u3092\u8868\u3059\u305f\u3081\u3001\u4e8c\u91cd\u62ec\u5f27<code>((<\/code> \u3001 <code>))<\/code>\u3067\u56f2\u3080\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u8868\u9762\u3092<code>POLYGON<\/code>\u3068\u307f\u306a\u3057\u3066\u3001\u8868\u9762\u306e\u5074\u9762\u3092\u69cb\u6210\u3057\u307e\u3059\u3002 \u3053\u308c\u3089\u306f\u3059\u3079\u3066\u30b0\u30eb\u30fc\u30d7\u5316\u3055\u308c\u3001\u4e00\u7dd2\u306b\u63a5\u7d9a\u3055\u308c\u30663\u6b21\u5143\u8868\u9762\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u5f62\u6210\u3057\u307e\u3059\u3002<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/griddb.net\/wp-content\/uploads\/2017\/09\/polysurface-300x152.png\" alt=\"Polyhedral Surface\" width=\"300\" height=\"152\" class=\"alignnone size-medium wp-image-17003\" srcset=\"\/wp-content\/uploads\/2017\/09\/polysurface-300x152.png 300w, \/wp-content\/uploads\/2017\/09\/polysurface.png 621w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<h3 id=\"quadraticsurface\">QUADRATICSURFACE<\/h3>\n<p>\u4e09\u6b21\u5143\u306e\u4e8c\u6b21\u66f2\u9762\u3092Quadraticsurface\u3068\u3044\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306f\u3001\u65b9\u7a0b\u5f0f<code>f(X) = &lt;AX,X&gt; + BX + C<\/code>\u306b\u3088\u3063\u3066\u4e09\u6b21\u5143\u7a7a\u9593\u306e\u66f2\u9762\u3067\u3059\u3002\u305d\u306e\u9762\u65b9\u7a0b\u5f0f\u3092\u4f5c\u308b\u4fc2\u6570\u3092\u8868\u305916\u500b\u306e\u6570\u5b57\u3092\u633f\u5165\u3057\u3066\u9762\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<br \/>\nQUADRATICSURFACE\u306f\u3001WKT\uff08Well-Known-Text\u5f62\u5f0f\uff09\u306e\u5165\u529b\u304c3D\u5e73\u9762\u306e\u5ea7\u6a19\u3067\u306f\u306a\u304f\u65b9\u7a0b\u5f0f\u306e\u4fc2\u6570\u3067\u3042\u308b\u70b9\u3067\u3001\u4ed6\u306e4\u3064\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3068\u306f\u7570\u306a\u308a\u307e\u3059\u3002 \u3053\u306e\u65b9\u7a0b\u5f0f\u306f\u3001\u4ee5\u4e0b\u306e\u901a\u308a\u3067\u3059\u3002<\/p>\n<pre class=\"prettyprint\">ax<sup>2<\/sup>+by<sup>2<\/sup>+cz<sup>2<\/sup>+2fyz+2gzx+2hxy+2px+2qy+2rz+d = 0<\/pre>\n<p><i>\u4e8c\u6b21\u5f62\u5f0f<\/i>\u306e\u884c\u5217\u306b\u5909\u63db\u3059\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<table id=\"matrix-table\">\n<tbody>\n<tr>\n<td><i>a<\/i><\/td>\n<td><i>h<\/i><\/td>\n<td><i>g<\/i><\/td>\n<td><i>p<\/i><\/td>\n<\/tr>\n<tr>\n<td><i>h<\/i><\/td>\n<td><i>b<\/i><\/td>\n<td><i>f<\/i><\/td>\n<td><i>q<\/i><\/td>\n<\/tr>\n<tr>\n<td><i>g<\/i><\/td>\n<td><i>f<\/i><\/td>\n<td><i>c<\/i><\/td>\n<td><i>r<\/i><\/td>\n<\/tr>\n<tr>\n<td><i>p<\/i><\/td>\n<td><i>q<\/i><\/td>\n<td><i>r<\/i><\/td>\n<td><i>d<\/i><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><b>Example Surface<\/b><\/p>\n<pre class=\"prettyprint\">GSRow* row;\nconst GSChar* wkt = \"QUADRATICSURFACE(( 84 2 3 5 6 7 8 9 10 12 13 14 15 16 17 18 ))\";\n\/\/ (snip)\ngsGetNextRow(rowSet,row);\ngsSetRowFieldByGeometry(row,4,wkt);\ngsPutRow(timeseries,NULL,row,NULL);\n<\/pre>\n<p>\u4e8c\u6b21\u66f2\u9762\u306e\u4f8b\u306b\u306f\u3001\u5e73\u884c\u5e73\u9762\u3001\u53cc\u66f2\u9762\u3001\u5186\u9310\u3001\u5186\u67f1\u304a\u3088\u3073\u7403\u304c\u542b\u307e\u308c\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30bf\u30a4\u30d7\u306e\u30b5\u30fc\u30d5\u30a7\u30b9\u306f\u3001\u7570\u306a\u308b\u591a\u9805\u5f0f\u306b\u30de\u30c3\u30d4\u30f3\u30b0\u3055\u308c\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u5f0f\u306e\u4e2d\u306b\u306f\u3001\u7279\u5b9a\u306e\u4fc2\u6570\u3084\u4fc2\u6570\u3092\u6301\u305f\u306a\u3044\u3082\u306e\u3082\u3042\u308a\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u3001\u6b21\u306e\u3088\u3046\u306a\u5f0f\u306b<code>x<\/code>\u304c\u5b58\u5728\u3057\u306a\u3044\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<pre class=\"prettyprint\">y<sup>2<\/sup> + z<sup>2<\/sup> - 1\n<\/pre>\n<p>\u7b49\u5f0f\u306b\u306f<i>x&#8217;s<\/i>\u304c\u306a\u3044\u306e\u3067\u3001x\u306e\u8fd1\u304f\u306e\u3059\u3079\u3066\u306e\u4fc2\u6570\u3092<i>a,h,p<\/i>\u306e\u3088\u3046\u306b0\u306b\u7f6e\u304d\u63db\u3048\u307e\u3059\u3002 <b>QUADRATICSURFACE<\/b> WKT\u306e\u884c\u5217\u5024\u3092\u5165\u529b\u3059\u308b\u3068\u304d\u306b\u306f\u3001\u5fc5\u305a16\u500b\u306e\u5024\u304c\u3042\u308a\u3001\u6b20\u640d\u5024\u304c0\u306b\u7f6e\u304d\u63db\u3048\u3089\u308c\u3066\u3044\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002<\/p>\n<p>\u305d\u306e\u4ed6\u306e\u4f8b\u3068\u4e8c\u6b21\u66f2\u9762\u306b\u95a2\u3059\u308b\u60c5\u5831\u306f\u3001\u3053\u306e<a href=\"http:\/\/mathworld.wolfram.com\/QuadraticSurface.html\" target=\"_blank\" title=\"Quadratic Surfaces\" rel=\"noopener noreferrer\">Wolfram Alpha page<\/a>\u30da\u30fc\u30b8\u306b\u3042\u308a\u307e\u3059\u3002<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/griddb.net\/wp-content\/uploads\/2017\/09\/rsz_quadratics.png\" alt=\"example-quadratics\" width=\"524\" height=\"158\" class=\"alignnone size-full wp-image-17183\" srcset=\"\/wp-content\/uploads\/2017\/09\/rsz_quadratics.png 524w, \/wp-content\/uploads\/2017\/09\/rsz_quadratics-300x90.png 300w\" sizes=\"(max-width: 524px) 100vw, 524px\" \/><\/p>\n<h2 id=\"wkt\">Creating Objects with WKT Format<\/h2>\n<p>GridDB\u3067\u3053\u308c\u3089\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u306e\u306f\u975e\u5e38\u306b\u7c21\u5358\u3067\u3001\u958b\u767a\u8005\u3068\u3057\u3066<code>WKT<\/code>\u5f62\u5f0f\u3067\u30e2\u30c7\u30eb\u3092\u69cb\u7bc9\u3059\u308b\u65b9\u6cd5\u3092\u77e5\u3063\u3066\u304a\u304f\u3060\u3051\u3067\u3088\u3044\u3067\u3057\u3087\u3046\u3002 WKT\uff08Well-Known-Text\uff09\u30c6\u30ad\u30b9\u30c8\u66f8\u5f0f\u306f\u3001\u30de\u30c3\u30d7\u307e\u305f\u306f\u7a7a\u9593\u53c2\u7167\u7cfb\u306e\u30d9\u30af\u30c8\u30eb\u30b8\u30aa\u30e1\u30c8\u30ea\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u8868\u3059\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u308b\u30c6\u30ad\u30b9\u30c8\u30de\u30fc\u30af\u30a2\u30c3\u30d7\u8a00\u8a9e\u3067\u3059\u3002 WKT\u6587\u5b57\u5217\u304c\u6b63\u3057\u304f\u89e3\u6790\u3055\u308c\u308b\u3068\u3001\u30b8\u30aa\u30e1\u30c8\u30ea\u304c\u4f5c\u6210\u3055\u308c\u3001\u305d\u308c\u305e\u308c\u306e\u5217\u306bCollection\u307e\u305f\u306fTimeseries\u306b\u633f\u5165\u3055\u308c\u307e\u3059\u3002 \u30b8\u30aa\u30e1\u30c8\u30ea\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u4f5c\u6210\u3055\u308c\u306a\u3044\u7b49\u306e\u30a8\u30e9\u30fc\u3092\u9632\u3050\u305f\u3081\u306b\u3001WKT\u5f62\u5f0f\u306b\u306f\u6ce8\u610f\u3092\u6255\u3046\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<h5 id=\"format\">General Formatting Rules<\/h5>\n<p>\u30b8\u30aa\u30e1\u30c8\u30ea\uff08POINT\u3001LINESTRING\u306a\u3069\uff09\u306e\u5f62\u72b6\u3092\u8a18\u8ff0\u3059\u308b\u3068\u304d\u306f\u3001<b>\u5927\u6587\u5b57\u3068\u5c0f\u6587\u5b57<\/b>\u3092\u6b63\u3057\u304f\u4f7f\u7528\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002 \u3055\u3082\u306a\u3044\u3068\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306f\u4f5c\u6210\u3055\u308c\u305a\u3001<i>\u4f8b\u5916<\/i>\u304c\u767a\u751f\u3059\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 \u66f8\u5f0f\u8a2d\u5b9a\u304c\u6b63\u3057\u3044\u3053\u3068\u3001\u304a\u3088\u3073\u304b\u3063\u3053\u306e\u91cf\u304c\u6b63\u3057\u304f\u306a\u3044\u304b\u3001\u9069\u5207\u306a\u9593\u9694\u3092\u4f7f\u7528\u3057\u306a\u3044\u306a\u3069\u306e\u69cb\u6587\u30a8\u30e9\u30fc\u304c\u306a\u3044\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p>\u7a7a\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u5834\u5408\u306f\u3001<code>POINT(EMPTY)<\/code>\u30b8\u30aa\u30e1\u30c8\u30ea\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<p><b>Empty LINESTRING and POLYGON<\/b><\/p>\n<pre class=\"prettyprint\">Geometry emptyPoint = Geometry.valueOf(\"POINT(EMPTY)\");\n<\/pre>\n<p>\u4e00\u822c\u7684\u306aWKT\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306e\u8a73\u7d30\u306b\u3064\u3044\u3066\u306f\u3001\u3053\u3061\u3089\u306e<a href=\"https:\/\/en.wikipedia.org\/wiki\/Well-known_text\" target=\"_blank\" title=\"WKT Wikipedia\" rel=\"noopener noreferrer\">Wikipedia page<\/a>\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<h5 id=\"range-restrictions\">Range Restrictions<\/h5>\n<p>\u3044\u304f\u3064\u304b\u306e<i>GIS<\/i>\u30b5\u30dd\u30fc\u30c8\uff08\u5730\u7406\u60c5\u5831\u30b7\u30b9\u30c6\u30e0\uff09\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3067\u306f\u3001\u30dd\u30a4\u30f3\u30c8\u306e\u7bc4\u56f2\u307e\u305f\u306f\u5024\u306b\u3001<code>NaN<\/code>\u3001<code>INF<\/code>\u3001<code>-INF<\/code>\uff08\u975e\u6570\u5024\u3001\u8ca0\u304a\u3088\u3073\u6b63\u306e\u7121\u9650\u5927\uff09\u306a\u3069\u306e\u7279\u6b8a\u306a\u5024\u3092\u542b\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u6b63\u307e\u305f\u306f\u8ca0\u306e\u6d6e\u52d5\u5c0f\u6570\u70b9\u6570\u3092\u542b\u3080\u6570\u5024\u578b\u306e\u307f\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n<h5 id=\"forming-surface\">Forming Closed Surfaces<\/h5>\n<p>\u901a\u5e38\u3001POINT\u304a\u3088\u3073QUADRATICSURFACE\u3092\u8d85\u3048\u308b\u30b8\u30aa\u30e1\u30c8\u30ea\u306f\u3001\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u30dd\u30a4\u30f3\u30c8\u3067\u69cb\u6210\u3055\u308c\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30dd\u30a4\u30f3\u30c8\u306f\u3001\u3044\u3063\u305f\u3093\u4e00\u7dd2\u306b\u63a5\u7d9a\u3055\u308c\u308b\u3068\u3001\u30a8\u30c3\u30b8\u3092\u69cb\u6210\u3059\u308b\u30e9\u30a4\u30f3\u3092\u5f62\u6210\u3057\u307e\u3059\u3002 \u30a8\u30c3\u30b8\u306f\u901a\u5e38\u3001\u53ce\u675f\u3057\u3066\u9589\u3058\u305f\u30b5\u30fc\u30d5\u30a7\u30b9\u3092\u5f62\u6210\u3057\u307e\u3059\u3002 <i>POINT<\/i>\u3092\u9664\u304f\u3059\u3079\u3066\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u3067\u306f\u3001\u8907\u6570\u306e\u30c7\u30fc\u30bf\u30dd\u30a4\u30f3\u30c8\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\n<h5 id=\"dimensions\">Dimensions of Geometry Values<\/h5>\n<p>\u30b8\u30aa\u30e1\u30c8\u30ea\u3092\u4f5c\u6210\u3059\u308b\u30dd\u30a4\u30f3\u30c8\u306f\u3001<i>2\u6b21\u5143\u307e\u305f\u306f3\u6b21\u5143<\/i>\u306e\u5f62\u5f0f\u3067\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002 \u307e\u305f\u3001\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u8f2a\u90ed\u3092\u63cf\u304f\u305f\u3081\u306b\u70b9\u3092\u4f5c\u6210\u3059\u308b\u5834\u5408\u3001\u5bf8\u6cd5\u306f\u4e00\u8cab\u3057\u3066\u3044\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\uff08\u3064\u307e\u308a\u30012D\u306e\u5ea7\u6a19\u306f2D\u306e\u4ed6\u306e\u3059\u3079\u3066\u306e\u5ea7\u6a19\u3092\u6301\u3064\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff09\u3002 \u30dd\u30a4\u30f3\u30c8\u306f\u30b3\u30f3\u30de<code>,<\/code>\u3067\u533a\u5207\u3089\u308c\u3001<code>x,y,z<\/code>\u5ea7\u6a19\u306f<code>SPACES<\/code>\u3067\u533a\u5207\u3089\u308c\u307e\u3059\u3002<\/p>\n<h2 id=\"column-creation\">Defining Geometric Columns and Indexes<\/h2>\n<p>\u30b8\u30aa\u30e1\u30c8\u30ea\u5217\u306f\u3001\u9759\u7684\u307e\u305f\u306f\u52d5\u7684\u306a\u65b9\u6cd5\u3067\u30b3\u30f3\u30c6\u30ca\u306e\u5217\u30b9\u30ad\u30fc\u30de\u306b\u8ffd\u52a0\u3067\u304d\u307e\u3059\u3002 <code>\u30b8\u30aa\u30e1\u30c8\u30ea<\/code>\u306fGridDB\u30e9\u30a4\u30d6\u30e9\u30ea\u304b\u3089\u76f4\u63a5\u30a4\u30f3\u30dd\u30fc\u30c8\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u3001\u30b3\u30f3\u30c6\u30ca\u306e<i>\u30af\u30e9\u30b9\u30b9\u30ad\u30fc\u30de<\/i>\u306e\u5217\u30bf\u30a4\u30d7\u3068\u3057\u3066\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002 \u307e\u305f\u3001<code>SPATIAL<\/code>\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u30d5\u30e9\u30b0\u3092\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u3001\u30b8\u30aa\u30e1\u30c8\u30ea\u5217\u306b\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><b>Java Container Creation<\/b><\/p>\n<pre class=\"prettyprint\">\/\/ (snip)\nimport com.toshiba.mwcloud.gs.Geometry;\nimport com.toshiba.mwcloud.gs.GeometryOperator;\n\/\/(snip)\nstatic class Shape {\n\t@RowKey String name;\n\tdouble perimeter;\n\tdouble volume;\n\tDate creation;\n\tGeometry geom;\n\n\tpublic String toString(){\n\t\treturn String.format(\"Shape: Name = %s, Perimeter = %f, \n                                   Volume = %f, Creation Date = %s, WKT = %s\", \n                                name,perimeter,volume,creation.toString(),geom.toString());\n\/\/(snip)\nCollection&lt;String,Shape&gt; geometryCollection =  \n              gridstore.putCollection(\"GeometryCollection101\",Shape.class);\n\/\/ (snip)\ngeometryCollection.createIndex(\"geom\",IndexType.SPATIAL);\n<\/pre>\n<p>GridDB\u306eC API\u306b\u306f\u3001\u660e\u793a\u7684\u306aGSGeometry\u69cb\u9020\u4f53\u307e\u305f\u306f\u5217\u6319\u578b\u306f\u3042\u308a\u307e\u305b\u3093\u3002<code>ContainerInfo<\/code>\u304a\u3088\u3073<code>ColumnInfo<\/code>\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3057\u3066\u52d5\u7684\u30b9\u30ad\u30fc\u30de\u3092\u6301\u3064\u30b3\u30f3\u30c6\u30ca\u3092\u4f5c\u6210\u3059\u308b\u5834\u5408\u306f\u3001ColumnInfo\u306e<i>\u30bf\u30a4\u30d7<\/i>\u3092<code>GS_TYPE_GEOMETRY<\/code>\u306b\u8a2d\u5b9a\u3057\u307e\u3059\u3002 <b>\u69cb\u9020\u4f53\u30d0\u30a4\u30f3\u30c7\u30a3\u30f3\u30b0<\/b>\u3092\u4f7f\u7528\u3057\u3066\u3044\u308b\u5834\u5408\u306f\u3001\u30b8\u30aa\u30e1\u30c8\u30ea\u3068\u3057\u3066\u8a2d\u5b9a\u3059\u308b\u5217\u306e\u578b\u3092<code>const GSChar*<\/code>\u578b\u306b\u8a2d\u5b9a\u3057\u307e\u3059\u3002 \u305d\u3053\u304b\u3089\u3001\u69cb\u9020\u4f53\u30d0\u30a4\u30f3\u30c7\u30a3\u30f3\u30b0\u3092\u5b9f\u884c\u3059\u308b\u3068\u304d\u306b\u3001\u5217\u306e\u578b\u3092\u300c\u30b8\u30aa\u30e1\u30c8\u30ea\u300d\u306b\u8a2d\u5b9a\u3057\u307e\u3059\u3002 \u30ab\u30e9\u30e0\u5024\u3092<b>WKT<\/b>\u30d5\u30a9\u30fc\u30e0\u3067\u8a2d\u5b9a\u3059\u308b\u3060\u3051\u3067\u3001GridDB\u306f\u305d\u308c\u3092\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u30d0\u30a4\u30ca\u30ea\u306b\u76f8\u5f53\u3059\u308b\u3082\u306e\u306b\u5909\u63db\u3057\u307e\u3059\u3002<\/p>\n<p><b>C Container Creation<\/b><\/p>\n<pre class=\"prettyprint\">typedef struct {\n\tconst GSChar* name;\n\tGSTimestamp timestamp;\n\tdouble volume;\n\tdouble perimeter;\n\tconst GSChar* shape;\n} GeometryRow;\n\nGS_STRUCT_BINDING(GeometryRow,\n\tGS_STRUCT_BINDING_KEY(name, GS_TYPE_STRING)\n\tGS_STRUCT_BINDING_ELEMENT(timestamp,GS_TYPE_TIMESTAMP)\n\tGS_STRUCT_BINDING_ELEMENT(volume,GS_TYPE_DOUBLE)\n\tGS_STRUCT_BINDING_ELEMENT(perimeter,GS_TYPE_DOUBLE)\n\tGS_STRUCT_BINDING_ELEMENT(shape,GS_TYPE_GEOMETRY));\n\/\/(snip)\nGSCollection* collection;\ngsPutCollection(gridstore,\"GeometryCollection311\", \nGS_GET_STRUCT_BINDING(GeometryRow),NULL,GS_FALSE,&amp;collection);\n\ngsCreateIndex(collection,\"shape\",GS_INDEX_FLAG_SPATIAL);\n\nGeometryRow gRow; \ngRow.name = \"FirstPoint\";\ngRow.timestamp = gsCurrentTime();\ngRow.volume = 0;\n\ndouble x, y, z;\nsscanf(wkt,\"POINT(%lf %lf %lf)\",&amp;x,&amp;y,&amp;z);\ngRow.perimeter = sqrt((x * x) + (y * y) + (z * z));\ngRow.shape = \"POINT(1 4.23 4.2)\";\n\ngsPutRow(collection,NULL,&amp;gRow,NULL);\n<\/pre>\n<h2 id=\"spatial-operations\">Spatial Operations in GridDB&#8217;s API<\/h2>\n<p>\u30b8\u30aa\u30e1\u30c8\u30ea\u30c7\u30fc\u30bf\u5024\u306f\u3001GridDB\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u633f\u5165\u3059\u308b\u3068\u3001<code>BLOB<\/code>\u30c7\u30fc\u30bf\u578b\u3068\u3088\u304f\u4f3c\u305f<i>\u30d0\u30a4\u30ca\u30ea<\/i>\u5f62\u5f0f\u3067\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002 \u3064\u307e\u308a\u3001<code>TQL<\/code>\u3067\u306f\u76f4\u63a5\u7b49\u4fa1\u64cd\u4f5c\u3092\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3002<\/p>\n<p><b>Example of Invalid TQL<\/b><\/p>\n<pre class=\"prettyprint\">SELECT * WHERE geom = ST_GeomFromText('POINT(2 4 5)') #(Throws Error)\n<\/pre>\n<p>Java\u3067\u306f\u3001GridDB\u306eAPI\u3092\u4f7f\u7528\u3057\u3066\u30b8\u30aa\u30e1\u30c8\u30ea\u306e\u5024\u3092\u76f4\u63a5\u6bd4\u8f03\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"prettyprint\">Geometry pointToFind = Geometry.valueOf(\"POINT(0 4)\");\n\/\/ (snip)\nwhile(rowSet.hasNext){\n     Row row = rowSet.next();\n     Geometry rowPoint = row.getGeometry(4);\n     boolean match = rowPoint.equals(pointToFind);\n     System.out.println(match);\n<\/pre>\n<p>GridDB\u306eAPI\u3068TQL\u306b\u3088\u3063\u3066\u8a31\u53ef\u3055\u308c\u308b1\u3064\u306e\u7a7a\u9593\u64cd\u4f5c\u306f\u3001<code>SPATIAL INTERSECTION<\/code>\u3068\u3044\u3044\u307e\u3059\u3002\u3053\u308c\u306f\u30012\u3064\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u9593\u306e\u5171\u901a\u9818\u57df\u307e\u305f\u306f\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u691c\u7d22\u3059\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002 3D\u4ea4\u5dee\u306f\u30012\u3064\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u4ea4\u5dee\u3059\u308b\u76f4\u65b9\u4f53\u3068\u3057\u3066\u77e5\u3089\u308c\u308b<i>\u6700\u5c0f\u5883\u754c\u30dc\u30c3\u30af\u30b9<\/i>\u3092\u6c7a\u5b9a\u3059\u308b\u3053\u3068\u304b\u3089\u6210\u308a\u307e\u3059\u3002\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c2\u6b21\u5143\u306e\u5834\u5408\u3001z\u5ea7\u6a19\u306e\u7bc4\u56f2\u5024\u306f<code>(-INF,INF)<\/code>\u3067\u3059\u3002\u3053\u308c\u306f\u30013D\u6b21\u5143\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30672D\u6b21\u5143\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u7167\u5408\u3059\u308b\u3053\u3068\u306f\u3001\u4ea4\u5dee\u306e\u53ef\u80fd\u6027\u3092\u9ad8\u3081\u3001\u3088\u308a\u5305\u62ec\u7684\u306az\u7bc4\u56f2\u3092\u6709\u3059\u308b\u3053\u3068\u3092\u610f\u5473\u3057\u307e\u3059\u3002<br \/>\n\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092<i>POINT<\/i>\u3068\u6bd4\u8f03\u3059\u308b\u3068\u3001\u5883\u754c\u30dc\u30c3\u30af\u30b9\u306e\u9802\u70b9\u306f\u70b9\u3067\u69cb\u6210\u3055\u308c\u307e\u3059\u3002\u30dc\u30c3\u30af\u30b9\u306e\u9802\u70b9\u306f\u3059\u3079\u3066\u540c\u3058\u5074\u306b\u3042\u308a\u3001\u9577\u3055\u306f0\u3067\u3059\u3002POINT\u3068\u975e\u30dd\u30a4\u30f3\u30c8\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u6bd4\u8f03\u3059\u308b\u3068\u3001GridDB\u306f\u305d\u306e\u30d0\u30a6\u30f3\u30c7\u30a3\u30f3\u30b0\u30dc\u30c3\u30af\u30b9\u306b\u305d\u306e\u9818\u57df\u5185\u306e\u30dd\u30a4\u30f3\u30c8\u304c\u542b\u307e\u308c\u3066\u3044\u308b\u304b\u3069\u3046\u304b\u3092\u30c1\u30a7\u30c3\u30af\u3057\u307e\u3059\u3002<br \/>\n2\u3064\u306e<i>POLYGON<\/i>\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u3088\u3046\u306a\u70b9\u3067\u306f\u306a\u3044\u56f3\u5f62\u3092\u6bd4\u8f03\u3059\u308b\u5834\u5408\u3001\u5883\u754c\u30dc\u30c3\u30af\u30b9\u306b\u306f\u4ea4\u5dee\u70b9\u306e\u7a7a\u9593\u69cb\u9020\u3092\u69cb\u6210\u3059\u308b\u6700\u5c0fx\u3001y\u3001z\u5ea7\u6a19\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<p><b>Examples of Spatial Intersections<\/b><br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/griddb.net\/wp-content\/uploads\/2017\/09\/rsz_spatial-intersections.png\" alt=\"spatial-intersection-thumbnail\" width=\"800\" height=\"450\" class=\"aligncenter size-full wp-image-17103\" srcset=\"\/wp-content\/uploads\/2017\/09\/rsz_spatial-intersections.png 800w, \/wp-content\/uploads\/2017\/09\/rsz_spatial-intersections-300x169.png 300w, \/wp-content\/uploads\/2017\/09\/rsz_spatial-intersections-768x432.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/p>\n<h3 id=\"geometry-api\">Issuing Geometric Queries with GridDB API<\/h3>\n<p>Java\u3067\u306e<code>\u30af\u30a8\u30ea\u30fc\uff08String\u5217\u3001Geometry Geom\u3001GeometryOperator\u6f14\u7b97\u5b50\uff09<\/code>\u307e\u305f\u306f<code>gsQueryByGeometry\uff08\uff09<\/code>\u3092\u767a\u884c\u3059\u308b\u3053\u3068\u306b\u3088\u308a\u3001<code>Collection<\/code>\u30b3\u30f3\u30c6\u30ca\u306b\u5bfe\u3057\u3066TQL\u3092\u4f7f\u7528\u305b\u305a\u306b\u3059\u3070\u3084\u304f\u7167\u4f1a\u3092\u884c\u3046\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u3053\u306e\u30af\u30a8\u30ea\u306f\u3059\u3079\u3066\u306e\u884c\u3092\u691c\u7d22\u3057\u3066\u53d6\u5f97\u3057\u307e\u3059<br \/>\n\u305d\u306e &#8216;\u5217&#8217;\u306e\u5024\u306f<code>const GSChar *\u30b8\u30aa\u30e1\u30c8\u30ea<\/code>\u3068\u4ea4\u5dee\u3057\u307e\u3059\u3002<\/p>\n<p><b>Java<\/b><\/p>\n<pre class=\"prettyprint\">Geometry intersection = Geometry.valueOf(\"POLYGON((0 0 0, 2 0 0, 2 2 0, 0 2 0, 0 0 0))\");\n\nQuery<shape> query = geometryCollection.query(\"geom\",intersection, \n GeometryOperator.INTERSECT);\n\nRowSet<shape> rowSet = query.fetch(false);\nwhile(rowSet.hasNext()){\n\tShape shape = rowSet.next();\n\tSystem.out.println(shape);\n<\/shape><\/shape><\/pre>\n<p><b>C<\/b><\/p>\n<pre class=\"prettyprint\">GSQuery* query;\nGSRowSet* rowSet;\nGeometryRow geometryRow;\n\nconst GSChar* point = \"POINT(1 4.56 4.2)\";\ngsQueryByGeometry(collection,\"shape\",point,GS_GEOMETRY_OPERATOR_INTERSECT,&amp;query);\n\ngsFetch(query,GS_FALSE,&amp;rowSet);\n\nwhile(gsHasNextRow(rowSet)){\n\tgsGetNextRow(rowSet, &amp;fetchedRow);\n\tGSChar timeStr[GS_TIME_STRING_SIZE_MAX];\n\tgsFormatTime(fetchedRow.timestamp,timeStr,sizeof(timeStr));\n\n\tprintf(\"Name = %s\",fetchedRow.name);\n\tprintf(\" Timestamp = %s\",timeStr);\n\tprintf(\" Volume = %.2lf\", fetchedRow.volume);\n\tprintf(\" Perimeter = %.2lf\", fetchedRow.perimeter);\n\tprintf(\" Shape = %sn\",fetchedRow.shape);\n<\/pre>\n<h3 id=\"geometry-tql\">TQL Queries with Geometry Values<\/h3>\n<p>TQL\u3092\u4f7f\u7528\u3057\u3066\u3001\u6307\u5b9a\u3057\u305f\u3044\u4ed6\u306e\u6761\u4ef6\u3068\u4e00\u7dd2\u306b\u5e7e\u4f55\u5b66\u7684\u306a\u4ea4\u5dee\u70b9\u3092\u30c1\u30a7\u30c3\u30af\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 2\u3064\u306e<i>\u975e2\u6b21\u5f62\u72b6<\/i>\u3092\u6bd4\u8f03\u3059\u308b\u5834\u5408\u306f\u3001GIS\u95a2\u6570<code>ST_MBRIntersects\uff08geometry1\u3001geometry2\uff09<\/code>\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u30b8\u30aa\u30e1\u30c8\u30ea\u3092\u6307\u5b9a\u3057\u3066\u4ea4\u5dee\u3092\u78ba\u8a8d\u3059\u308b\u5834\u5408\u306f\u3001WKT\u5f62\u5f0f\u3067\u56f3\u5f62\u3092\u5165\u529b\u3057\u3001TQL\u306e<code>ST_GeomFromText\uff08wkt\uff09<\/code>\u95a2\u6570\u3092\u4f7f\u7528\u3057\u3066\u30b8\u30aa\u30e1\u30c8\u30ea\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u5909\u63db\u3059\u308c\u3070\u3088\u3044\u3067\u3057\u3087\u3046\u3002<\/p>\n<p>\u4f8b\u3048\u3070&#8217;geom&#8217;\u30ab\u30e9\u30e0\u306e\u5024\u304c<code>POLYGON\uff08\uff082 2 4\u30015 2 4\u30015 2 8\u30012 2 8\u30012 2 4\uff09\uff09<\/code>\u3068\u4ea4\u5dee\u3057\u3001<b>\u304b\u3064<\/b>\u5024\u306e\u5217\u304c<i>\u964d\u9806<\/i>\u30677.5\u3088\u308a\u5927\u304d\u3044\u6700\u59275\u884c\u3092\u53d6\u5f97\u3057\u305f\u3044\u5834\u5408\u306f\u3001\u6b21\u306e\u3088\u3046\u306b\u30af\u30a8\u30ea\u3092\u767a\u884c\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"prettyprint\">\nString tql = \"SELECT * WHERE ST_MBRIntersects(geom,\" +  \n\"ST_GeomFromText('POLYGON((2 2 4, 5 2 4, 5 2 8, 2 2 8, 2 2 4))'))\"\n+ \" AND value &gt; 7.5 ORDER BY value DESC LIMIT 5\";\n\nQuery&lt;Row&gt; query = collection.query(tql);\n<\/pre>\n<p><i>ST_MBRIntersects<\/i>\u306b\u3064\u3044\u3066\u6ce8\u610f\u3059\u3079\u304d\u70b9\u306e1\u3064\u306f\u3001\u6bd4\u8f03\u306e\u305f\u3081\u306b<i>QUADRATICSURFACES<\/i>\u3092\u4f7f\u7528\u3067\u304d\u306a\u3044\u3053\u3068\u3067\u3059\u3002 \u4e8c\u6b21\u66f2\u9762\u3068\u975e\u4e8c\u6b21\u66f2\u9762\u306e\u4ea4\u70b9\u3092\u30c1\u30a7\u30c3\u30af\u3057\u305f\u3044\u5834\u5408\u3002 <code>ST_QSFMBRIntersects\uff08\u4e8c\u6b21\u95a2\u6570\u3001\u30b8\u30aa\u30e1\u30c8\u30ea\uff09<\/code>\u3092\u4f7f\u7528\u3057\u3066\u4ea4\u5dee\u3092\u30c1\u30a7\u30c3\u30af\u3057\u3001<code>ST_MakeQSF\uff08A00\u3001A10\u3001A20\u3001A01 ...\uff09<\/code>\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<i>A00\u3001A10\u3001A20\u3001A01<\/i>\u306f\u3001<code>&lt;AX,X&gt; + BX + C<\/code>\u306e2\u6b21\u65b9\u7a0b\u5f0f\u3092\u4f5c\u308a\u307e\u3059\u3002<\/p>\n<p><b>Example of Quadratic Surface Query<\/b><\/p>\n<pre class=\"prettyprint\">GSQuery* query;\nGSRowSet* rowSet;\n\ngsQuery(timeseries, \n  \"select * where STQSFMBRIntersects( \nST_MakeQSF(84,2,3,5,6,7,8,9,10,12,13,14,15,16,17,18),geom) AND id='row1'\", \n&amp;query);\n\ngsFetch(query,GS_FALSE,&amp;rowSet);\n<\/pre>\n<h2 id=\"uses-spatial\">Best Uses of Spatial Data<\/h2>\n<p>\u5e7e\u4f55\u5b66\u7684\u304a\u3088\u3073\u7a7a\u9593\u7684\u30c7\u30fc\u30bf\u30bf\u30a4\u30d7\u306f\u3001\u5de5\u5b66\u3001\u79d1\u5b66\u3001\u5efa\u7bc9\u3001\u5730\u7406\u3001IoT\u306a\u3069\u306e\u5206\u91ce\u3067\u975e\u5e38\u306b\u6709\u7528\u3067\u3059\u3002\u5730\u7406\u60c5\u5831\u306e\u5206\u6790\u3084IoT\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u306f\u3001\u30bb\u30f3\u30b5\u307e\u305f\u306f\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u7def\u5ea6\u3001\u7d4c\u5ea6\u3001\u9ad8\u5ea6\u3092\u8868\u3059\u305f\u3081\u306b\u7a7a\u9593\u30c7\u30fc\u30bf\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001\u6700\u5f8c\u306e3\u3064\u306e\u30ab\u30c6\u30b4\u30ea\u306f\u3001<code>POINT\uff08\u7def\u5ea6\u7d4c\u5ea6\u9ad8\u5ea6\uff09<\/code>\u306e\u5f62\u5f0f\u30673\u6b21\u5143\u306e\u30dd\u30a4\u30f3\u30c8\u3068\u3057\u3066\u8868\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u30dd\u30a4\u30f3\u30c8\u3068\u306e\u7a7a\u9593\u7684\u306a\u4ea4\u5dee\u3092\u4f7f\u7528\u3057\u3066\u3001\u7279\u5b9a\u306e\u5834\u6240\u3067\u884c\u3092\u898b\u3064\u3051\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><i>POLYGON<\/i>\u3092\u4f7f\u7528\u3057\u3066\u3001\u5730\u7406\u7684\u7bc4\u56f2\u5185\u306b\u3042\u308b\u884c\u3092\u898b\u3064\u3051\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001<code>POLYGON(57 110, 59 110, 59 130, 57 130, 57 110)<\/code>\u3067\u5e7e\u4f55\u5b66\u7684\u30af\u30a8\u30ea\u3092\u4f7f\u7528\u3057\u3066\u300157\u301c59\u7def\u5ea6\u304a\u3088\u3073130\u301c110\u7def\u5ea6\u306e\u7bc4\u56f2\u5185\u306e\u3059\u3079\u3066\u306e\u884c\u3092\u691c\u7d22\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<p>\u7dda\u30b9\u30c8\u30ea\u30f3\u30b0\u3001\u30dd\u30ea\u30b4\u30f3\u3001\u304a\u3088\u3073\u30b5\u30fc\u30d5\u30a7\u30b9\u306f\u3001\u30d9\u30af\u30c8\u30eb\u307e\u305f\u306f3\u6b21\u5143\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u8868\u3059\u305f\u3081\u306b\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002\u7a7a\u9593\u30c7\u30fc\u30bf\u3092\u4f5c\u6210\u3001\u683c\u7d0d\u3001\u7167\u4f1a\u3001\u304a\u3088\u3073\u7d22\u5f15\u4ed8\u3051\u3067\u304d\u308b\u3053\u3068\u306f\u3001\u5efa\u7269\u3084\u88c5\u7f6e\u304c3D\u8a2d\u8a08\u306b\u57fa\u3065\u3044\u3066\u3044\u308b\u30a8\u30f3\u30b8\u30cb\u30a2\u30ea\u30f3\u30b0\u3084\u5efa\u7bc9\u306a\u3069\u306e\u5206\u91ce\u3067\u7279\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002<\/p>\n<p>GridDB\u306e\u30e6\u30fc\u30b9\u30b1\u30fc\u30b9\u3068\u3057\u3066\u306f\u3001\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u30bb\u30f3\u30b5\u30fc\u306e\u30b3\u30ec\u30af\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u306a\u3069\u3082\u542b\u307e\u308c\u3001\u5177\u4f53\u7684\u306b\u306f\u3001\u30a2\u30af\u30c6\u30a3\u30d6\u3067\u3042\u308b\u304b\u3001\u898b\u3048\u308b\u8eca\u306e\u6570\u3001\u7b49\u306e\u4e00\u822c\u7684\u306a\u30c7\u30fc\u30bf\u3092\u683c\u7d0d\u3057\u3001\u8ffd\u8de1\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 <b>\u30b8\u30aa\u30e1\u30c8\u30ea<\/b>\u3092\u4f7f\u7528\u3057\u3066\u3001\u5730\u7406\u7684\u4f4d\u7f6e\u3092<b>POINT<\/b>\u3067\u4fdd\u5b58\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002\u4ea4\u5dee\u95a2\u6570\u306e\u30af\u30a8\u30ea\u3092\u4f7f\u7528\u3057\u3066\u3001API\u95a2\u6570\u307e\u305f\u306fTQL\u306e\u3044\u305a\u308c\u304b\u3092\u4f7f\u7528\u3057\u3066\u4f4d\u7f6e\u306b\u57fa\u3065\u3044\u3066\u30d5\u30a3\u30eb\u30bf\u3092\u898b\u3064\u3051\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><b>Traffic Sensor in Java<\/b><\/p>\n<pre class=\"prettyprint\">public class TrafficLight {\n\t@RowKey\n\tpublic  String tag; \/\/ Sensor Id of Smart Traffic Light\t\n\tpublic Geometry point; \/\/ Latitude, Longitude, and Elevation of Sensor\n\tpublic Date installation; \/\/ Time of installation to the Traffic Grid\n\tpublic boolean active; \/\/ Whether the traffic light sensor has been activated\n\tpublic int reports; \/\/ Number of reports that the Traffic Light has issued\n\tpublic String streets; \/\/ Cross streets of Traffic Light\n\/\/ (snip)\n<\/pre>\n<p><b>Querying the Traffic Collection in Java<\/b><\/p>\n<pre class=\"prettyprint\">Collection&lt;String,TrafficLight&gt; trafficLightCollection =  \n  gridstore.putCollection(\"trafficLights101\",TrafficLight.class);\n\/\/ (snip)\ntrafficLightCollection.createIndex(\"point\",IndexType.SPATIAL);\n\/\/ (snip)\n\/\/ Search for a specific POINT\nString ptTql = \"SELECT * WHERE ST_MBRIntersects(point,\" +\n                \"ST_GeomFromText('POINT(47.33 84.72 0.7)'))\";\n\nQuery&lt;TrafficLight&gt; ptQuery = trafficLightCollection.query(ptTql);\n\/\/ (snip)\n\/\/ Search for Point in a 2D Range using POLYGON\nString tql = \"SELECT * WHERE ST_MBRIntersects(point,\" + \n            \"ST_GeomFromText('POLYGON((49.00 86.00, 51.00 86.00,\" +\n             \"51.00 87.00, 49.00 87.00, 49.00 86.00))'))\";\n\nQuery&lt;TrafficLight&gt; query = trafficLightCollection.query(tql);\n<\/pre>\n<h2 id=\"griddb-se\">Using GridDB Standard Edition<\/h2>\n<p>GridDB Community Edition\u3067\u306f\u3001<b>\u30b8\u30aa\u30e1\u30c8\u30ea<\/b>\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u3059\u304c\u3001\u30ab\u30e9\u30e0\u5024\u3068\u3057\u3066\u633f\u5165\u3059\u308b\u3053\u3068\u3082\u3001\u30b3\u30f3\u30c6\u30ca\u306e\u30b9\u30ad\u30fc\u30de\u306e\u4e00\u90e8\u3068\u3057\u3066\u4f7f\u7528\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u305b\u3093\u3002 \u3053\u308c\u3089\u306e\u6a5f\u80fd\u306f<b>Standard Edition<\/b>\u4ee5\u964d\u3067\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3059\u3002 GridDB Standard Edition\u306f<a href=\"https:\/\/aws.amazon.com\/marketplace\/pp\/B01N9QMCMF\/?ref=_ptnr_web_us\" target=\"_blank\" title=\"GridDB SE AWS\" rel=\"noopener noreferrer\">AWS<\/a>\u3067\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u4e00\u822c\u7684\u306a\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3068\u69cb\u6210\u306e\u60c5\u5831\u306f\u3001<a href=\"https:\/\/griddb.net\/en\/docs\/manuals\/v3.1\/GridDB_QuickStartGuide.html\" target=\"_blank\" title=\"Quick Start\" rel=\"noopener noreferrer\">\u30af\u30a4\u30c3\u30af\u30b9\u30bf\u30fc\u30c8\u30ac\u30a4\u30c9<\/a>\u306b\u8a18\u8f09\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>GEOMETRY\u30bf\u30a4\u30d7\u306e\u8a73\u7d30\u306f\u3001GridDB SE\u30c6\u30af\u30cb\u30ab\u30eb\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u306e<a href=\"https:\/\/griddb.net\/en\/docs\/manuals\/v3.1\/GridDB_TechnicalReference.html#sec-4.3.3\" target=\"_blank\" title=\"Geometry Section\" rel=\"noopener noreferrer\">\u3053\u306e\u30bb\u30af\u30b7\u30e7\u30f3<\/a>\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002 <a href=\"https:\/\/griddb.net\/en\/docs\/manuals\/v3.1\/GridDB_API_Reference.html#sec-3-2-9\" target=\"_blank\" title=\"Spatial Operations\" rel=\"noopener noreferrer\">Spatial\u64cd\u4f5c<\/a>\u306e\u8a73\u7d30\u306b\u3064\u3044\u3066\u306f\u3001API\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u30de\u30cb\u30e5\u30a2\u30eb\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002 GridDB\u306f\u3001\u6b63\u898f\u8868\u73fe\u30d1\u30bf\u30fc\u30f3\u3092\u4f7f\u7528\u3057\u3066\u3001\u5165\u529b\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u304c\u6709\u52b9\u306aWKT\u304b\u3069\u3046\u304b\u3092\u5224\u65ad\u3057\u307e\u3059\u3002 \u53d7\u3051\u5165\u308c\u53ef\u80fd\u306a\u30d1\u30bf\u30fc\u30f3\u306f\u3001GridDB\u306e\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u306e<a href=\"https:\/\/github.com\/griddb\/griddb_nosql\/blob\/master\/java_client\/src\/com\/toshiba\/mwcloud\/gs\/common\/GeometryUtils.java\" target=\"_blank\" title=\"GridDB Geometry Source Code\" rel=\"noopener noreferrer\">\u3053\u306e\u30bb\u30af\u30b7\u30e7\u30f3<\/a>\u306b\u3042\u308a\u307e\u3059\u3002<\/p>\n<style>\n#matrix-table{<br \/>\n    width: 50%;<br \/>\n}<br \/>\n#matrix-table tr td {<br \/>\n      text-align: center;<br \/>\n}<br \/>\n.big-parenthesis {<br \/>\n      font-size: 10em;<br \/>\n}<br \/>\n<\/style>\n","protected":false},"excerpt":{"rendered":"<p>\u306f\u3058\u3081\u306b \u30c7\u30fc\u30bf\u306f\u6642\u9593\u7684\u306b\u3082\u7a7a\u9593\u7684\u306b\u3082\u69d8\u3005\u306a\u5f62\u5f0f\u3067\u63d0\u4f9b\u3055\u308c\u307e\u3059\u3002GridDB\u306e\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u30b3\u30f3\u30c6\u30ca\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3067\u3001TQL\u304a\u3088\u3073\u6642\u9593\u7279\u6709\u306eAPI\u64cd\u4f5c\u3068\u3068\u3082\u306b\u3001\u30c7\u30fc\u30bf\u306e\u6642\u9593\u7684\u5074\u9762\u3092\u30ab\u30d0\u30fc\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 GridDB\u306e [&hellip;]<\/p>\n","protected":false},"author":123,"featured_media":49025,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1005],"tags":[],"class_list":["post-50669","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-1005"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528 | GridDB: Open Source Time Series Database for IoT<\/title>\n<meta name=\"description\" content=\"\u306f\u3058\u3081\u306b\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/griddb.net\/ja\/\u672a\u5206\u985e\/using-geometry-values-griddb\/\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528 | GridDB: Open Source Time Series Database for IoT\" \/>\n<meta property=\"og:description\" content=\"\u306f\u3058\u3081\u306b\" \/>\n<meta property=\"og:url\" content=\"https:\/\/griddb.net\/ja\/\u672a\u5206\u985e\/using-geometry-values-griddb\/\" \/>\n<meta property=\"og:site_name\" content=\"GridDB: Open Source Time Series Database for IoT\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/griddbcommunity\/\" \/>\n<meta property=\"article:published_time\" content=\"2017-09-27T07:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-14T15:53:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/wp-content\/uploads\/2017\/09\/blog_title_18.png\" \/>\n\t<meta property=\"og:image:width\" content=\"870\" \/>\n\t<meta property=\"og:image:height\" content=\"490\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Joshua Pascascio\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@GridDBCommunity\" \/>\n<meta name=\"twitter:site\" content=\"@GridDBCommunity\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"Joshua Pascascio\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/\"},\"author\":{\"name\":\"Joshua Pascascio\",\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/person\/ca72185e9a3778df765a76313f789fd8\"},\"headline\":\"GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528\",\"datePublished\":\"2017-09-27T07:00:00+00:00\",\"dateModified\":\"2025-11-14T15:53:35+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/\"},\"wordCount\":234,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/griddb.net\/en\/#organization\"},\"image\":{\"@id\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#primaryimage\"},\"thumbnailUrl\":\"\/wp-content\/uploads\/2017\/09\/blog_title_18.png\",\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/\",\"url\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/\",\"name\":\"GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528 | GridDB: Open Source Time Series Database for IoT\",\"isPartOf\":{\"@id\":\"https:\/\/griddb.net\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#primaryimage\"},\"thumbnailUrl\":\"\/wp-content\/uploads\/2017\/09\/blog_title_18.png\",\"datePublished\":\"2017-09-27T07:00:00+00:00\",\"dateModified\":\"2025-11-14T15:53:35+00:00\",\"description\":\"\u306f\u3058\u3081\u306b\",\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#primaryimage\",\"url\":\"\/wp-content\/uploads\/2017\/09\/blog_title_18.png\",\"contentUrl\":\"\/wp-content\/uploads\/2017\/09\/blog_title_18.png\",\"width\":870,\"height\":490},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/griddb.net\/en\/#website\",\"url\":\"https:\/\/griddb.net\/en\/\",\"name\":\"GridDB: Open Source Time Series Database for IoT\",\"description\":\"GridDB is an open source time-series database with the performance of NoSQL and convenience of SQL\",\"publisher\":{\"@id\":\"https:\/\/griddb.net\/en\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/griddb.net\/en\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ja\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/griddb.net\/en\/#organization\",\"name\":\"Fixstars\",\"url\":\"https:\/\/griddb.net\/en\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png\",\"contentUrl\":\"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png\",\"width\":200,\"height\":83,\"caption\":\"Fixstars\"},\"image\":{\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/griddbcommunity\/\",\"https:\/\/x.com\/GridDBCommunity\",\"https:\/\/www.linkedin.com\/company\/griddb-by-toshiba\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/person\/ca72185e9a3778df765a76313f789fd8\",\"name\":\"Joshua Pascascio\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/872ef8be79cb5117c256feb4c279ac41b954bfba599d647db925185c449aff1c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/872ef8be79cb5117c256feb4c279ac41b954bfba599d647db925185c449aff1c?s=96&d=mm&r=g\",\"caption\":\"Joshua Pascascio\"},\"url\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/author\/joshua\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528 | GridDB: Open Source Time Series Database for IoT","description":"\u306f\u3058\u3081\u306b","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/griddb.net\/ja\/\u672a\u5206\u985e\/using-geometry-values-griddb\/","og_locale":"ja_JP","og_type":"article","og_title":"GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528 | GridDB: Open Source Time Series Database for IoT","og_description":"\u306f\u3058\u3081\u306b","og_url":"https:\/\/griddb.net\/ja\/\u672a\u5206\u985e\/using-geometry-values-griddb\/","og_site_name":"GridDB: Open Source Time Series Database for IoT","article_publisher":"https:\/\/www.facebook.com\/griddbcommunity\/","article_published_time":"2017-09-27T07:00:00+00:00","article_modified_time":"2025-11-14T15:53:35+00:00","og_image":[{"width":870,"height":490,"url":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/wp-content\/uploads\/2017\/09\/blog_title_18.png","type":"image\/png"}],"author":"Joshua Pascascio","twitter_card":"summary_large_image","twitter_creator":"@GridDBCommunity","twitter_site":"@GridDBCommunity","twitter_misc":{"\u57f7\u7b46\u8005":"Joshua Pascascio","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"4\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#article","isPartOf":{"@id":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/"},"author":{"name":"Joshua Pascascio","@id":"https:\/\/griddb.net\/en\/#\/schema\/person\/ca72185e9a3778df765a76313f789fd8"},"headline":"GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528","datePublished":"2017-09-27T07:00:00+00:00","dateModified":"2025-11-14T15:53:35+00:00","mainEntityOfPage":{"@id":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/"},"wordCount":234,"commentCount":0,"publisher":{"@id":"https:\/\/griddb.net\/en\/#organization"},"image":{"@id":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#primaryimage"},"thumbnailUrl":"\/wp-content\/uploads\/2017\/09\/blog_title_18.png","inLanguage":"ja","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/","url":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/","name":"GridDB\u3067\u306e\u30b8\u30aa\u30e1\u30c8\u30ea\u5024\u306e\u4f7f\u7528 | GridDB: Open Source Time Series Database for IoT","isPartOf":{"@id":"https:\/\/griddb.net\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#primaryimage"},"image":{"@id":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#primaryimage"},"thumbnailUrl":"\/wp-content\/uploads\/2017\/09\/blog_title_18.png","datePublished":"2017-09-27T07:00:00+00:00","dateModified":"2025-11-14T15:53:35+00:00","description":"\u306f\u3058\u3081\u306b","inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/"]}]},{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/griddb.net\/ja\/%e6%9c%aa%e5%88%86%e9%a1%9e\/using-geometry-values-griddb\/#primaryimage","url":"\/wp-content\/uploads\/2017\/09\/blog_title_18.png","contentUrl":"\/wp-content\/uploads\/2017\/09\/blog_title_18.png","width":870,"height":490},{"@type":"WebSite","@id":"https:\/\/griddb.net\/en\/#website","url":"https:\/\/griddb.net\/en\/","name":"GridDB: Open Source Time Series Database for IoT","description":"GridDB is an open source time-series database with the performance of NoSQL and convenience of SQL","publisher":{"@id":"https:\/\/griddb.net\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/griddb.net\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ja"},{"@type":"Organization","@id":"https:\/\/griddb.net\/en\/#organization","name":"Fixstars","url":"https:\/\/griddb.net\/en\/","logo":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/griddb.net\/en\/#\/schema\/logo\/image\/","url":"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png","contentUrl":"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png","width":200,"height":83,"caption":"Fixstars"},"image":{"@id":"https:\/\/griddb.net\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/griddbcommunity\/","https:\/\/x.com\/GridDBCommunity","https:\/\/www.linkedin.com\/company\/griddb-by-toshiba"]},{"@type":"Person","@id":"https:\/\/griddb.net\/en\/#\/schema\/person\/ca72185e9a3778df765a76313f789fd8","name":"Joshua Pascascio","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/griddb.net\/en\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/872ef8be79cb5117c256feb4c279ac41b954bfba599d647db925185c449aff1c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/872ef8be79cb5117c256feb4c279ac41b954bfba599d647db925185c449aff1c?s=96&d=mm&r=g","caption":"Joshua Pascascio"},"url":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/author\/joshua\/"}]}},"_links":{"self":[{"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/posts\/50669","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/users\/123"}],"replies":[{"embeddable":true,"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/comments?post=50669"}],"version-history":[{"count":1,"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/posts\/50669\/revisions"}],"predecessor-version":[{"id":51512,"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/posts\/50669\/revisions\/51512"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/media\/49025"}],"wp:attachment":[{"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/media?parent=50669"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/categories?post=50669"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/ja\/wp-json\/wp\/v2\/tags?post=50669"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}