floatで<や>=などの条件がうまく働きません

コンピュータは小数を含む数値を正しく扱うことができないからです。
2020年4月12日
ユーザー
select * from users where score <> 4.2;

のように打ち込んで実施をすると、scoreがnull以外のデータが全て出てきました。

4.2以外のデータを抽出するようにと指示を出したはずですが、scoreが4.2であるデータも抽出してしまっています。またscoreがnullのものは抽出しませんでした。

また >= 4.2 と指示を出すと、4.2を含んだ列は抽出されませんでした。これも同様の理由でしょうか。

理由を教えていただきたいのと、対処法を教えていただきたいです。

この回答を見るにはプレミアムプランへの登録が必要です

プレミアムプランとは?