PDO和SQL查询结果中日期格式不同的原因是什么?

问题描述 投票:0回答:0

我尝试使用 PDO 运行 SELECT 查询

    $dbh = new PDO('connection string', 'user', 'pass'); 
    $stmt = $dbh->prepare('SELECT id, date_begin, date_end FROM v_accounts where id = 248234999'); 
    $stmt->execute();
    var_dump($stmt->fetchAll(PDO::FETCH_ASSOC));

本次查询的结果是:

    array(1) {
      [0] =>
      array(3) {
        'id' =>
        string(9) "248234999"
        'date_begin' =>
        string(10) "01.01.2022"
        'date_end' =>
        string(10) "01.07.2022"
      }
    }`

如果我运行这个查询(

SELECT id, date_begin, date_end FROM v_accounts where id = 248234999
) 在 pgsql 数据库控制台中,我有另一个结果:
    248234999,0006-07-15,0007-01-12
ID 是唯一的。 v_accounts 是一个视图,字段
date_begin
date_end
由以下代码创建:`

   to_date(date_begin::text, 'DD.MM.YYYY'::text) AS date_begin,
   to_date(date_end::text, 'DD.MM.YYYY'::text)   AS date_end

适用于 php 5.6 和 php8.2,Postgresql 9.6

这两种情况查询结果不同的原因是什么?

php sql postgresql datetime pdo
© www.soinside.com 2019 - 2024. All rights reserved.