sql >> データベース >  >> RDS >> PostgreSQL

関数を使用してgpsの場所とpostgisの地理的値の間の距離を計算しますか?

    Hasuraは、GraphQLスキーマにPostGISのサポートを組み込んでいます。フィールドはすでにgeographyタイプであるため 、関数は必要ありません。

    Hasuraでは、offers間の関係を作成する必要があります およびaddress テーブル、およびGraphQLクエリは次のようになります:

    query nearby_offers($point: geography!) {
      offers(where: {address: {location: {_st_d_within: {distance: 200000, from: $point}}}}) {
        id
        offer_fields
        address {
          location
        }
      }
    }
    

    Hasuraの地理タイプは、値がGEOJSONにあることを想定しています。 フォーマット。変数$pointは次のようになります 次のようになります:

    {
      "point": {
        "type" : "Point", 
        "coordinates": [longitude, latitude]
      }
    }
    

    値を挿入するとき(ミューテーション)、同じタイプの変数(GEOJSON)が必要です。



    1. MariaDBからMySQLへの移行-違い

    2. MySQLクエリのIF条件でカウント

    3. mysqlを使用したMeteor

    4. PL/SQLチェック日は有効です