my sql 有“money”类型吗?

my sql 有“money”类型吗?,第1张

mysql确实没有money类型

sql server才有money类型

说明如下:

money 保存货币值数据类型,范围为-922337203685477.5808到+922337203685477.5808 最大长度为8字节。

smallmoney 保存货币值数据类型,范围为-214748.3647到+214748.3647 最大长度为4字节。

可见,可以考虑用double类型,因为,double是8个字节,而float只有4个字节

至于mysql的数据类型的教程,可以参考http://dev.mysql.com/doc/refman/5.1/zh/index.html

里的“列类型”链接

您好,是这样的:declare @str varchar(100)set @str='U8中的销售发票、采购发票 关键字' --要搜索的字符串 declare @s varchar(8000)declare tb cursor local forselect s='if exists(select 1 from ['+b.name+'] where ['+a.name+'] like ''%'+@str+'%'') print ''所在的表及字段: ['+b.name+'].['+a.name+']'''from syscolumns a join sysobjects b on a.id=b.idwhere b.xtype='U' and a.status>=0 and a.xusertype in(175,239,231,167)open tbfetch next from tb into @swhile @@fetch_status=0begin exec(@s) fetch next from tb into @sendclose tbdeallocate tb

SQL Server

money 数据类型用来表示钱和货币值。这种数据类型能存储从-9220亿到9220 亿之间的数据,精确到货币单位的万分之一

MySQL

DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]

压缩的“严格”定点数。M是小数位数(精度)的总数,D是小数点(标度)后面的位数。小数点和(负数)的‘-’符号不包括在M中。如果D是0,则值没有小数点或分数部分。DECIMAL整数最大位数(M)为65。支持的十进制数的最大位数(D)是30。如果D被省略,默认是0。如果M被省略,默认是10。

如果指定UNSIGNED,不允许负值。

所有DECIMAL列的基本计算(+,-,*,/)用65位精度完成。

具体来说, 也就是

DECIMAL ( 18 , 4)

因为 -9220亿到9220 亿 也就是 整数部分, 需要 14 位 ( 亿 需要 9位。 )

然后小数部分是 万分之一, 也就是 0.0001需要 4位


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8522037.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-17
下一篇2023-04-17

发表评论

登录后才能评论

评论列表(0条)

    保存