Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将DB2中的整数转换为mysql insert的带天间隔的日期_Php_Mysql_Db2 - Fatal编程技术网

Php 将DB2中的整数转换为mysql insert的带天间隔的日期

Php 将DB2中的整数转换为mysql insert的带天间隔的日期,php,mysql,db2,Php,Mysql,Db2,我有一个包含此select查询的php脚本: $plcQueryDB2 = " select cstnoc AS DEALER, framec AS FRAME, covr1c AS COVER, colr1c AS COLOR , extd1d AS SHIPDATE FROM GPORPCFL group by invnoc,cstn

我有一个包含此select查询的php脚本:

$plcQueryDB2 = " 

    select  
            cstnoc AS DEALER,
            framec AS FRAME,
            covr1c AS COVER,
            colr1c AS COLOR ,
            extd1d AS SHIPDATE
      FROM GPORPCFL
      group by invnoc,cstnoc, slsnoc, orqtyc, framec, covr1c,colr1c, extd1d
      limit 200
";
结果集是正确的,但问题是我正在使用结果插入mysql,并且需要使用true date格式的SHIPDATE列,因为它在DB2中是一个整数。它看起来像20180202,而我需要2018-02-02用于mysql

另一个因素是,我需要将一个值(SHIPDATE)用于插入的2个值

我需要为开始日期插入SHIPDATE+7天,为到期日期插入SHIPDATE+127天

以下是插页:

$stmt = $PDO->prepare("
        INSERT INTO placements (sku_id, group_id, dealer_id, start_date, expire_date)
        SELECT id, sku_group_id, :DEALER, :SHIPDATE + 7 day interval, :SHIPDATE + 127 day interval
        FROM skus s
        WHERE  s.frame=:FRAME AND s.cover1=:COVER AND s.color1=:COLOR
    ");
显然,我在以下位置得到了一个mysql语法错误:
:SHIPDATE+7天间隔,:SHIPDATE+127天间隔

但这并没有把它变成真正的日期格式。所以我有两个问题围绕着同一个领域

我可以用什么最好的方式转换为true date格式并添加此select或insert的间隔

我可以选择转换并添加间隔,也可以在插入级别执行,但我真的不知道如何或哪一个是最好的

如果您的DB2日期是“$date\u from\u DB2”:


当然,这需要一个中间步骤。

因此,如果我理解:我将在select语句之后创建一个变量,以该格式存储字段,然后在insert中调用该变量?是的,这将是实现此策略的方法。(我本想说“剥这只猫的皮”,但你可能喜欢猫。我不讨厌它们,但…:-)哈哈,很公平。我喜欢猫,但我也用这个短语,我是一个复杂的人!这很有效,谢谢,不用谢。“卡托”说你好。或者是“喂我”。。。是的,可能就是这样。:-)
$newdate = date("Y-m-d", strtotime('$date_from_db2'));