2

これは非常に奇妙な問題のようで、原因を突き止めることができないようです。mysql select ステートメントを実行すると、値が引用符で囲まれた '7.56' になった場合にのみ、結果が返されません。引用符なしで、または別の数値を使用して同じクエリを実行すると、期待どおりに機能します。以下のクエリと結果の例:

SELECT * 
FROM  `orders` 
WHERE  `itemsTotal` =  '7.56'
LIMIT 0 , 30

MySQL が空の結果セット (つまり、ゼロ行) を返しました。(クエリには 0.0334 秒かかりました)

SELECT * 
FROM  `orders` 
WHERE  `itemsTotal` = 7.56
LIMIT 0 , 30

Showing rows 0 - 0 ( 1 total, Query took 0.0297 sec)

項目の合計を 7.57 に変更すると、次のようになります。

SELECT * 
FROM  `orders` 
WHERE  `itemsTotal` =  '7.57'
LIMIT 0 , 30

Showing rows 0 - 0 ( 1 total, Query took 0.0280 sec)

SELECT * 
FROM  `orders` 
WHERE  `itemsTotal` = 7.57
LIMIT 0 , 30

Showing rows 0 - 0 ( 1 total, Query took 0.0284 sec)

これは、ローカル ホストでテストするために mysql 5.5.24 を実行し、ライブ環境で mysql 5.0.95 を実行しています。このクエリを PHP ファイルと phpmyadmin から実行すると、同じ結果になります。誰かが明らかなエラーを見つけることができたら、私に知らせてください!

4

1 に答える 1