对于插入表中的数据,数据库会按照表中列的数据类型来进行存储。如:
db2 create table test1(id int,data decime(4,2))
db2 insert into test1 values (1,20)
db2 insert into test1 values (2,20.0)
db2 insert into test1 values (3,20.00)
db2 insert into test1 values (4,20.000)
最后存储的格式都会是20.00
db2 select * from test1
id data
---- ------
1 20.00
2 20.00
3 20.00
4 20.00
再来看看comparison:
db2 select * from test1 where data = 20
id data
---- ------
1 20.00
2 20.00
3 20.00
4 20.00
db2 select * from test1 where data = 20.0
id data
---- ------
1 20.00
2 20.00
3 20.00
4 20.00
db2 select * from test1 where data = 20.00
id data
---- ------
1 20.00
2 20.00
3 20.00
4 20.00
db2 select * from test1 where data = 20.000
id data
---- ------
1 20.00
2 20.00
3 20.00
4 20.00
可见,20.00和20、20.0、20.000,对于db2来说,会进行数据类型的转化,从而变得相等。
添加新评论0 条评论