如何在DB2

时间:2016-08-18 05:25:30

标签: sql date db2

我无法将last_day数据从yyyymmdd转换为ddmmyyyy。 我的字段是整数。所以我转换成char。然后我尝试格式化为to_date。当我尝试转换为ddmmyyyy时,会显示一些错误消息。

This is my formula:
LAST_DAY(to_date(cast(IVL_SCHEDULER_PROC_DATE as char(8)),'yyyymmdd'))

Result 
2016-08-18

Expected Result
18-08-2016

有人知道吗?

2 个答案:

答案 0 :(得分:1)

您可以使用varchar_format,如下所示;

SELECT VARCHAR_FORMAT(LAST_DAY(TO_DATE("IVL_SCHEDULER_PROC_DATE",'YYYY-MM-DD')),'MM-DD-YYYY') from db2inst1.test
31-08-2016

这是varchar_format;

的last_day函数
curl_setopt_array($curl, array(
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_URL => 'https://example.com/j_spring_security_check',
    CURLOPT_HEADER => 1,
    CURLOPT_VERBOSE => 1,
    CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0 FirePHP/0.7.4',
    CURLOPT_FOLLOWLOCATION => 1,
    CURLOPT_POST => 1,
    CURLOPT_POSTFIELDS => $fields_items,
    CURLOPT_SSL_VERIFYHOST => 0,
    CURLOPT_COOKIEFILE =>'C:\www\mycookies.txt',
    CURLOPT_COOKIEJAR => 'C:\www\mycookies.txt',
    CURLOPT_SSL_VERIFYPEER => 0,  

));
$response = curl_exec($curl);

答案 1 :(得分:1)

这会有用吗?

select 
  varchar(mod(IVL_SCHEDULER_PROC_DATE,100)) || '-' ||
  varchar(mod(IVL_SCHEDULER_PROC_DATE/100,100)) || '-' ||
  varchar(IVL_SCHEDULER_PROC_DATE/10000)

使用20151231的测试值,我得到了' 31-12-2015'结果