隨筆-31  評論-14  文章-0  trackbacks-0

          1.float類型
          float列類型默認長度查不到結果,必須指定精度,
          比如 num  float,  insert into  table (num) values (0.12); select  * from table where num=0.12的話,empty set。
          num float(9,7),  insert into  table (num) values (0.12); select  * from table where num=0.12的話會查到這條記錄。

          mysql> create table tt
              -> (
              -> num  float(9,3)
              -> );
          Query OK, 0 rows affected (0.03 sec)

          mysql> insert into tt(num)values(1234567.8);
          ERROR 1264 (22003): Out of range value for column 'num' at row 1
          注:超出字段范圍,無法插入

          mysql> insert into tt(num)values(123456.8);
          Query OK, 1 row affected (0.00 sec)

          mysql> select  * from  tt;
          +------------+
          | num        |
          +------------+
          | 123456.797 |
          +------------+
          1 row in set (0.00 sec)
          注:小數位數不夠,自動補齊,但是存在一個問題就是如上的近似值。

          mysql> insert into tt(num)values(123456.867);
          Query OK, 1 row affected (0.04 sec)

          mysql> select * from   tt;
          +------------+
          | num        |
          +------------+
          | 123456.797 |
          | 123456.797 |
          | 123456.867 |
          +------------+
          3 rows in set (0.00 sec)

          mysql> select  * from tt where  num=123456.867;
          +------------+
          | num        |
          +------------+
          | 123456.867 |
          +------------+
          1 row in set (0.00 sec)

          mysql> insert into tt(num)values(2.8);
          Query OK, 1 row affected (0.04 sec)

          mysql> select * from   tt;
          +------------+
          | num        |
          +------------+
          | 123456.797 |
          | 123456.797 |
          | 123456.867 |
               2.800 |
          +------------+
          4 rows in set (0.00 sec)

          mysql> select  * from tt where  num=2.8;
          +-------+
          | num   |
          +-------+
          | 2.800 |
          +-------+
          1 row in set (0.00 sec)

          mysql> insert into tt(num)values(2.888888);
          Query OK, 1 row affected (0.00 sec)

          mysql> select  * from  tt;
          +------------+
          | num        |
          +------------+
          | 123456.797 |
          | 123456.797 |
          | 123456.867 |
               2.800 |
               2.889 |
          +------------+
          5 rows in set (0.00 sec)
          注:小數位數超了,自動取近似值。

          --------------------------------------------------------------------------------------

          2.double類型

          mysql> create table tt(
              -> num  double(9,3)
              -> );
          Query OK, 0 rows affected (0.02 sec)

          mysql> insert into tt(num) values(234563.9);
          Query OK, 1 row affected (0.00 sec)

          mysql> select * from  tt;
          +------------+
          | num        |
          +------------+
          | 234563.900 |
          +------------+
          1 row in set (0.00 sec)

          mysql> insert into tt(num) values(2345623.2);
          ERROR 1264 (22003): Out of range value for column 'num' at row 1
          mysql> insert into tt(num) values(234563.2);
          Query OK, 1 row affected (0.00 sec)

          mysql> select  * from  tt;
          +------------+
          | num        |
          +------------+
          | 234563.900 |
          | 234563.200 |
          +------------+
          2 rows in set (0.00 sec)

          mysql> insert into tt(num) values(2.8);
          Query OK, 1 row affected (0.00 sec)

          mysql> select  * from tt;
          +------------+
          | num        |
          +------------+
          | 234563.900 |
          | 234563.200 |
               2.800 |
          +------------+
          3 rows in set (0.00 sec)

           

          FLOAT(M,D)或REAL(M,D)或DOUBLE PRECISION(M,D)。這里,“(M,D)”表示該值一共顯示M位整數,其中D位位于小數點后面。
          例如,定義為FLOAT(7,4)的一個列可以顯示為-999.9999。MySQL保存值時進行四舍五入,因此如果在FLOAT(7,4)列內插入999.00009,近似結果是999.0001。

          posted on 2012-07-09 23:15 zhanghu198901 閱讀(8789) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 且末县| 伊吾县| 政和县| 布拖县| 团风县| 牟定县| 常熟市| 云和县| 定陶县| 自治县| 岫岩| 天台县| 威海市| 永州市| 玉溪市| 隆林| 乐山市| 册亨县| 亳州市| 焉耆| 香河县| 隆林| 大竹县| 库伦旗| 天水市| 屏南县| 达日县| 汤阴县| 泽普县| 象山县| 洛扎县| 苏州市| 桂阳县| 探索| 昌图县| 温州市| 宁海县| 连云港市| 思茅市| 察隅县| 息烽县|