我在SQL Server上有很好的经验,但是突然我发现了这个奇怪的SELECT命令
SELECT
SELECT $
或者
SELECT $ FROM tableName
0.00始终返回标量值为零(),或者返回所有值为的新列0.00
0.00
那是什么?
当SQL Server遇到您的$符号时,它将自动将其转换为money数据类型。由于美元符号后没有显式值,因此SQL Server假设为0.00。从MSDN:
$
money
转换为money或时smallmoney,假定整数为货币单位。例如,整数值4转换为等值的货币4美元(对于us_english,默认语言)。浮点值中小数点右边的数字四舍五入为货币值的四个小数位。要转换为整数数据类型的char或varchar数据类型的表达式必须仅由数字和可选的正负号(+或-)组成。前导空格被忽略。转换为money的char或varchar数据类型的表达式还可以包含可选的小数点和前导美元符号($)。
smallmoney