1+Null 居然等于 Null

    好吧,我OUT了。因为以前基本上是用php对数据结果的同一行进行计算,居然没注意sql语言中 select 1+Null 的结果会是Null, 好在测试细心发现了问题。本人看我的有关sql的书中都好像没有讲这一点,如果谁知道哪本书写了这点,希望能把书名告诉我下。

    关于SQL 在数值计算时对 NULL 的处理及解决办法,详见:http://iteches.com/archives/5848   

    当然, 比较好的办法是在设计数据库时防范于未然,把数值类型设置成不能为Null,并默认为0,写sql时加个(int)或(float)。

    我在写SQL时,要经常判断字符串类型是否是Null或'', 显然在插入数据时,如果是'',转成Null插入,也是可以避免的。

你可能感兴趣的:(sql)