700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > SQL Server MySQL Oracle PostgreSQL中常用函数用法(1)日

SQL Server MySQL Oracle PostgreSQL中常用函数用法(1)日

时间:2019-06-02 18:58:42

相关推荐

SQL Server MySQL Oracle PostgreSQL中常用函数用法(1)日

数据库|mysql教程

SQL,Server,MySQL,Oracle,Postgr

数据库-mysql教程

uip协议栈源码,vscode二次元打字插件,ubuntu下运行c,war包如何用tomcat运行,nedb和sqlite,网页设计 星,如何查服务器域名,dede手机注册插件,hplus前端框架介绍,爬虫程序续爬,php取数组第一个元素,西安seo服务西安搜推宝超牛,活动 网站 源码,特效网页源码,php手机模板,js多个页面切换,教务管理系统数据字典,程序员表白视频下载lzw

练习使用Hibernate没有用MySQL数据库,而是用了前不久接触的PostgreSQL,由于不同的数据对于相同的操作有各自的函数,MySQL的date_format(),在PostgreSQL中是没有的,google一番发现原来是要用to_char()。 搜索到一篇英文文章《Executing Common SQL Coding

多店源码下载,ubuntu打开网址,小爬虫有哪些,php商业精英,德州扑克seolzw

网站源码带wap手机端,ubuntu硬盘重新分区,tomcat的状态怎么看,网络爬虫库名,开源简洁导航网站源码php,叶天冬seolzw

练习使用Hibernate没有用MySQL数据库,而是用了前不久接触的PostgreSQL,由于不同的数据对于相同的操作有各自的函数,MySQL的date_format(),在PostgreSQL中是没有的,google一番发现原来是要用to_char()。

搜索到一篇英文文章《Executing Common SQL Coding Tasks Using Function Calls》(常用SQL函数调用的区别),其中列出了如:MS SQL Server、MySQL、Oracle、PostgreSQL,这几个常用数据库中的常用函数。

边翻译加自己的补充,分成几个文章共享给大家。方便以后的使用。

日期操作

1. 获取当前日期和时间

SQL Server

getdate()函数 (返回当前的日期和时间)

SELECT GETDATE()GO

MySQL

curdate()函数(返回当前的日期)

now()函数 (返回当前的日期和时间)

SELECT CURDATE()

Oracle

sysdate (返回服务器时间)

SELECT SYSDATE FROM dual;

PostgreSQL

current_date (返回当天的日期)

current_timestamp (返回日期和时间)

now() (返回当前的日期和时间,等效于 current_timestamp)

SELECT CURRENT_DATE;

【注意】

以上的函数都是不需要参数的。在Oracle中current_date和sysdate都是现实当前时间,结果基本相同,但是也有区别:

a. urrent_date返回的是当前会话时间,sysdate返回的是服务器时间。

b. current_date有时候比sysdate快一秒,这可能是四舍五入的结果。

c. 如果修改当前会话的时区,比如将中国的时区为东八区,修改为东九区,则current_date显示的时间为东九区时间,根据东加西减的原则,current_date应该比sysdate快一小时.

2. 操作时间的获取子域。比如:年、月、日、小时等等。

SQL Server:datepart(datepart,date)

SELECT DATEPART(dw, GETDATE())GO

* datepart()函数可以方便的取到日期中的各个部分,如日期:-12-05 15:15:36.513

MySQL:dayofmonth(date)返回对应的工作日名称

SELECT DAYNAME(1998-02-03);->周四

Oracle:to_char(date,’格式’)

SELECT TO_CHAR(SYSDATE, Day) FROM dual;

PostgreSQL:date_part(text,timestamp)

SELECT DATE_PART(dow, date ow);

3. 两个时间的间隔

SQLServer

SELECT DATADIFF(dd,1/1/01,GETDATE())GO

MySQL

SELECT FROM_DAYS(TO_DAYS(CURDATE()) - TO_DAYS(-12-05));

Oracle

SELECT TO_DATE(25-Nov-2000,dd-mon-yyyy) - TO_DATE(25-Aug-1969,dd-mon-yyyy)FROM dual;

PostgreSQL

SELECT AGE(CURRENT_DATE,25-Aug-1969);

4. 日期格式化(Mon,DD,YYYY;mm/dd/yy;dd/mm/yy;等等)

SQL Server

SELECT CONVERT(VARCHAR(11),GETDATE(),102)GO

MySQL

SELECT DATE_FORMAT("2001-11-25","%M %E,%Y");

Oracle

ELECT TO_CHAR(SYSDATE,dd-Mon-yyyy hh:mi,ss PM)FROM dual;

PostgreSQL

SELECT TO_CHAR(timestamp(CURRENT_DATE),dd-Mon-yyyy hh:mi:ss PM)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。