从Oracle表中选择日期时间值?

时间:2015-06-11 08:54:41

标签: php sql oracle datetime-format to-char

我想从oracle表中获取日期时间值。 这是我的代码

$conn = oci_connect("xxxx", "xxxx", "xxxx");
$query_1 = "select max (p.navi_date), p.navi_user
from payments p
where p.pay_date >= trunc(sysdate)
and p.navi_user = 'HAS:WWW:PARDOXT'
group by  p.navi_user
order by 1";
$s_1 = oci_parse($conn, $query_1);
oci_execute($s_1);
//oci_fetch_all($s, $res);
oci_fetch_all($s_1, $arr_1);
$o_1 = $arr_1['MAX(P.NAVI_DATE)'];
echo($o_1[0]);

但没有时间显示11.06.15。我怎样才能随时间选择呢?

1 个答案:

答案 0 :(得分:0)

  

max(p.navi_date)

要以所需格式显示日期,请使用 TO_CHAR 以及正确的格式模型

例如,

SQL> SELECT to_char(SYSDATE, 'MM/DD/YYYY HH24:MI:SS') dt FROM dual;

DT
-------------------
06/11/2015 14:28:04

SQL>

您修改过的查询如下所示:

SELECT to_char(max(p.navi_date), 'MM/DD/YYYY HH24:MI:SS')...

注意 TO_CHAR DATE 转换为 STRING ,以所需格式显示日期时间值。对于日期算术,您应该保留日期,使用to_char仅显示为字符串,而不是日期算术。