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

mysqlでHaversine式を高速化する方法は?

    なぜyoyがHAVINGを使用しているのか...クエリが集約関数を使用しないため、どこで使用するかをフィルタリングできます(ただし、使用しない場合はコードを繰り返す必要があります)。評価の結果

      $query = $mysqli->query("SELECT postcode, (
            6371 * acos (
            cos ( radians('$latitude') )
            * cos( radians( lat ) )
            * cos( radians( lng ) - radians('$longitude') )
            + sin ( radians('$latitude') )
            * sin( radians( lat ) )
          )
      ) AS distance
      FROM postcodetabel
      WHERE    6371 * acos (
            cos ( radians('$latitude') )
            * cos( radians( lat ) )
            * cos( radians( lng ) - radians('$longitude') )
            + sin ( radians('$latitude') )
            * sin( radians( lat ) ) )< 12
      ORDER BY distance ASC");
    



    1. SQLServerのエラーメッセージ4151「最初の引数のタイプを知る必要があるため、NULLIFの最初の引数のタイプをNULL定数にすることはできません」を修正しました。

    2. 行をデフォルトの列値に戻すmysql

    3. BLOBmysqlpythonからファイルを書き込みます

    4. データファイルを使用したデータベースへのRACのインストール