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

このSQLクエリが浮動小数点数を比較した結果を返さないのはなぜですか?

    一般に、浮動小数点数を=と比較することはお勧めできません。 演算子に等しい。

    アプリケーションでは、答えをどれだけ近づけるかを検討する必要があります。

    1度は約112km、0.00001度は約1.1メートル(赤道)です。 2つのポイントが0.00000001度=1mm異なる場合、アプリケーションで「等しくない」と本当に言いたいですか?

    set @EPSLION = 0.00001  /* 1.1 metres at equator */
    
    SELECT * FROM location_forslag 
    WHERE `lngitude` >= 13.8461208 [email protected] 
    AND `lngitude` <= 13.8461208 + @EPSILON
    

    これにより、lngitudeが@epsilon内にあるポイントが返されます。 目的の値の次数。アプリケーションに適したイプシロンの値を選択する必要があります。



    1. 誰かがMySQLの外部キーを説明できますか

    2. データベースの最初のX行を削除します

    3. XAMPPでMariaDBをMySQLに変更するにはどうすればよいですか?

    4. ニュースレターが送信されなかったユーザーの選択