如果我只是喜欢写东西SQL server 2005中“select 123.866”的数据类型是什么?
select 10.00;
什么类型的这是否能给我吗?
这是我运行的一个测试,来测试这些类型的二进制表示。这里最大的惊喜是没有一个演员阵容真的与第一排相匹配!
select cast(123.866 as binary) union all
select cast(cast(123.866 as real) as binary) union all
select cast(cast(123.866 as float) as binary) union all
select cast(cast(123.866 as decimal) as binary) union all
select cast(cast(123.866 as numeric) as binary) union all
select cast(cast(123.866 as money) as binary) union all
select cast(cast(123.866 as smallmoney) as binary)
--------------
0x0000000000000000000000000000000000000000000006030001DAE30100
0x000000000000000000000000000000000000000000000000000042F7BB64
0x00000000000000000000000000000000000000000000405EF76C8B439581
0x00000000000000000000000000000000000000000000120000017C000000
0x00000000000000000000000000000000000000000000120000017C000000
0x00000000000000000000000000000000000000000000000000000012E684
0x00000000000000000000000000000000000000000000000000000012E684
任何人都可以解释这一点吗?
最初,我想要做的就是避免必须编写cast语句,假设123.866是隐式小数。所以我想,以测试,如果这两个语句是相同的:
select cast(123.866 as decimal)
select 123.866
良好的通话,这是答案。你从哪里得到这些信息? – 2009-07-23 20:54:33
从提供的二进制文件中获得教育猜测,其中包含0603十六进制,然后以相反顺序排列整数值123866的二进制表示。然后在Management Studio中进行验证。 – 2009-07-23 20:56:21