sql 时间格式转换

sql 时间格式转换,第1张

在函数CONVERT()中你可以使用许多种不同风格的日期和时间格式。表111显示了所有的格式

表111 日期和时间的类型

类型值 标准 输出

0 Default mon dd yyyy hh:miAM

1 USA mm/dd/yy

2 ANSI yymmdd

3 British/French dd/mm/yy

4 German ddmmyy

5 Italian dd-mm-yy

6 - dd mon yy

7 - mon dd,yy

8 - hh:mi:ss

9 Default + milliseconds--mon dd yyyy

hh:mi:ss:mmmAM(or )

10 USA mm-dd-yy

11 JAPAN yy/mm/dd

12 ISO yymmdd

13 Europe Default + milliseconds--dd mon yyyy

hh:mi:ss:mmm(24h)

14 - hh:mi:ss:mmm(24h)

类型0,9,和13总是返回四位的年。对其它类型,要显示世纪,把style值加上100。类型13和14返回24小时时钟的时间。类型0,7,和13返回的月份用三位字符表示(用Nov代表November)

对表111中所列的每一种格式,你可以把类型值加上100来显示有世纪的年(例如,00年将显示为2000年)。例如,要按日本标准显示日期,包括世纪,你应使用如下的语句:

SELECT CONVERT(VARCHAR(30),GETDATE(),111)

在这个例子中,函数CONVERT()把日期格式进行转换,显示为1997/11/30

1

我用的是SQLyog数据库客户端。通过from_unixtime把Long时间转换为日期格式。具体用法如下:select from_unixtime(1388776825);执行即可

2

还可以增加时间格式,用法如下:

SELECT FROM_UNIXTIME( 1388776825, '%Y%m%d' ) 结果:20140104SELECT FROM_UNIXTIME( 1388776825, '%Y年%m月%d' ) 结果:2014年1月4

3

如果想逆向转换,可以通过unix_timestamp()函数反向转换。用法如下:

SELECT UNIX_TIMESTAMP() ;//获取当前时间的秒数

SELECT UNIX_TIMESTAMP('2014-03-23 10:10:40') ; //获取指定日期格式的秒数

SELECT UNIX_TIMESTAMP('2014-03-23') ; //获取指定日期格式的秒数

若要将 UTC 转换为本地时间,请按照下列步骤 *** 作:

确定您的本地时间偏移量,从 UTC 时间。为此请 Microsoft 基于 Windows 的计算机上按照下列步骤 *** 作:

单击 开始,单击 运行,键入 timedatecpl,然后单击 确定。

单击 时区 选项卡,然后验证选中了您的本地时区。 如果不选择您的本地时区,则请在可用的时区的列表中单击它。

在每个本地区域列表项开始时显示本地时间偏移量。例如对于-5: 00 是本地时间偏移量为东部时间 (美国和加拿大):

(GMT-5:00) 东部时间 (美国和加拿大)

添加本地时间偏移量为 UTC 时间。

例如您的本地时间偏移量是-5: 00,然后如果 UTC 时间显示为 11: 00,添加-5 到 11。偏移量的调整时该时间设置为 06: 00 (上午 6: 00)。

注意 该日期也采用 UTC 格式。例如您的本地时间偏移量是-8: 00,并且如果该文件的 UTC 时间显示为 00: 00 (午夜 12: 00) 在星期一,调整后的时间是 16: 00 星期日 (下午 4: 00,星期日)。

调整为夏时制时间。

UTC 时间不以反映夏令时进行调整。 如果您的时区参与夏时制时间,添加当夏时制时间是有效的文件的偏移量调整时间的时间差别。例如对于如果在您的时区中的夏令时的标准时间提前一小时,将 1 小时的时间添加到偏移量调整时间。

如果您的本地时间使用 12 小时格式,请将 24 小时时间格式转换为 12 小时时间格式。要在转换请按照下列步骤 *** 作,请执行以下 *** 作:

如果偏移量调整的时间 12: 01 和 23: 59,(含) 之间,之间减去 12 从在调整后的时间,然后将附加 下午

如果已调整的时间介于 00: 01 和 11: 59,(含) 之间,留在调整后的时间为是,然后将附加 上午

如果已调整的时间 00: 00,则使用 午夜 12: 00。

如果已调整的时间 12: 00,使用 中午 12: 00。

时间戳就是如1377216000000 这种格式我们在mysql数据库中会经常用到把时间转换成时间戳或把时间戳转换成日期格式了,下面我来介绍安卓中时间戳 *** 作转换方法。

一、原理

时间戳的原理是把时间格式转为十进制格式,这样就方便时间的计算。好~ 直接进入主题。(下面封装了一个类,有需要的同学可以参考或是直接Copy 就可以用了。)

如: 2013年08月23日 转化后是 1377216000000

二、步骤

1、创建 DateUtilsl类。

代码如下 复制代码

importjavatextParseException;

importjavatextSimpleDateFormat;

importjavautilDate;

/

@author Msquirrel

/

public class DateUtils {

privateSimpleDateFormat sf = null;

/获取系统时间 格式为:"yyyy/MM/dd "/

public static String getCurrentDate() {

Date d = newDate();

sf = newSimpleDateFormat("yyyy年MM月dd日");

returnsfformat(d);

}

/时间戳转换成字符窜/

public static String getDateToString(long time) {

Date d = newDate(time);

sf = newSimpleDateFormat("yyyy年MM月dd日");

returnsfformat(d);

}

/将字符串转为时间戳/

public static long getStringToDate(String time) {

sdf = newSimpleDateFormat("yyyy年MM月dd日");

Date date = newDate();

try{

date = sdfparse(time);

} catch(ParseException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

returndategetTime();

}

2、在对应使用的地方调用就可以了。

代码如下 复制代码

DateUtilsgetCurrentDate(); //获取系统当前时间

DateUtilsgetDateToString(时间戳); //时间戳转为时间格式

DateUtilsgetStringToDate("时间格式");//时间格式转为时间戳

以上就是关于sql 时间格式转换全部的内容,包括:sql 时间格式转换、MySql数据库怎样把Long时间与日期相互转换、如何转化UTC时间为数据库时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/9506825.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存