Dodaj do ulubionych

MySQL - ciekawe zachowanie

25.04.06, 17:17
To nie OS, ale jest wolno dostepne i czesto uzywane na linuksowych platformach, dlatego wrzucam temat tu.

Wczoraj porownywalem sumy w tabelach
(w stylu "select t1.* from table1 t1, table2 t2 where t1.a + t1.b = t2.c", wszystkie liczby typu decimal(8,2)) i podpadlo mi ze:

mysql> select 13.06 + 8.00;
+--------------+
| 13.06 + 8.00 |
+--------------+
| 21.06 |
+--------------+
1 row in set (0.00 sec)

mysql> select 21.06 < (13.06 + 8.00);
+------------------------+
| 21.06 < (13.06 + 8.00) |
+------------------------+
| 1 |
+------------------------+
1 row in set (0.00 sec)

mysql> select 21.06 = (13.06 + 8.00);
+------------------------+
| 21.06 = (13.06 + 8.00) |
+------------------------+
| 0 |
+------------------------+
1 row in set (0.00 sec)

Czyli: 13.06 + 8.00 to 21.06, ale

- ze 13.06 + 8.00 = 21.06, to nieprawda, natomiast
- ze 13.06 + 8.00 > 21.06, to prawda.

(MySQL wersja 4.1.13)
Obserwuj wątek
    • roar Re: MySQL - ciekawe zachowanie 29.04.06, 13:19
      saksalainen napisał:

      > (MySQL wersja 4.1.13)

      W 5.0.4 już jest dobrze. :)

Nie masz jeszcze konta? Zarejestruj się


Nakarm Pajacyka