一. 对于开发来说,经常要用不用不同的数据库,也是相当频繁的存在。
1.0 对于是做项目的开发,不同的公司,要求使用不同的数据库,这是再平常不过的事情了。
这里简单介绍下背景,由于之前是使用oracle 数据库,现在要转化成 postgresql来使用,那无庸置疑,肯定有语法上的差异。
接下来,我们就来介绍一下,oracle 跟 postgresql 之间所面对的差异性的问题。
oracle 计算两个日期相差的小时数,在oracle 里边这语法就是相当简的简洁。
CEIL ((b.outtime - a.intime) * 24)
因为项目需要,数据库突然切换成 postgresql
之前 oracle 那套完全跑不动了
将上边的语句替换成如下语句,便可以正常算出两个时间相差的小时数,我们看下这postgresql 的讲法,相对而言,复杂一些,但是最后还是能算出我们要的结果。
ceil(cast(date_part('epoch', b.outtime - a.intime)/60/60 as numeric ))
做为合格的开发者,我们除了做下语法上的变化外,我们还要验证一下,数据的准确性。
两个语句,最后算出来的结果是否相同,这也是相当重要的,避免以后不必要的问题,后期因为计算的问题,导致数据不准确。
为此,我们并不可能知道所有的语法,但当我们要进行转化的情况下,我们只能凭借经验跟其他搜索的结果,进行语法上的更改,以便达到我们想要的目的。
以上是自己的做为资深开发的一些个人经历,把这些经验分享给大家,希望以后大家在从事开发中,可以避免不必要的麻烦,跟浪费时间精力。
要是大家喜欢我的文章的话,可以在文章下留言或是联系我,共同进步,共同探讨开发的一些案例,促进彼此间的交流,分享一些日常的开发趣事。
共有 0 条评论