用于获取时间戳值并将其存储在日期字段中的 Oracle/PHP 语法

发布于 2024-09-25 03:11:59 字数 203 浏览 1 评论 0原文

数据库中存储有一个复合主键,由日期字段和外键 ID 组成。通常这会创建重复项,但是日期字段(尽管它只显示日、月、年似乎也存储了时间戳信息)

我的问题是如何提取时间戳信息(我认为使用 to_char 字段),更重要的是,我以后如何插入记录并存储日期和时间戳。

现在我可以存储日期,但不确定将时间添加到日期字段插入所需的语法,以便它可以与我从表选择中提取的值一致。

There is a composite primary key stored in a DB that consists of a date field and a foreign key ID. Normally this would create duplicates however the date field (although it only displays the day, month, year appears to have timestamp information stored as well)

My question is how to extract the timestamp information (I think using the to_char field) and more importantly, how I can later insert a record and store the date and timestamp.

Right now I can store a date but not sure the syntax I would need to use to add the time to the Date field insert so it can be consistent with the values I pull from a table select.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

苏别ゝ 2024-10-02 03:11:59

Oracle DATE 数据类型包括时间部分。

要使用 TO_CHAR 从 DATE 列获取日期:

TO_CHAR(date_column, 'DD-MM-YYYY')

...不确定我需要使用什么语法将时间添加到日期字段插入,以便它可以与我从表选择中提取的值一致。

要将时间部分指定为现有日期,请使用 TO_DATE 和 TO_CHAR 的组合:

TO_DATE(TO_CHAR(date_column, 'DD-MM-YYYY') || ' 23:59:00', 'DD-MON-YYYY HH24:MI:SS')

...将 23:59:00 更改为您真正想要的任何时间。双管道 (||) 是 Oracle 用于字符串连接的工具(现在也是 ANSI 标准)。

The Oracle DATE data type includes the time portion.

To get the date from a DATE column using TO_CHAR:

TO_CHAR(date_column, 'DD-MM-YYYY')

...not sure the syntax I would need to use to add the time to the Date field insert so it can be consistent with the values I pull from a table select.

To specify the time portion to an existing date, use a combination of TO_DATE and TO_CHAR:

TO_DATE(TO_CHAR(date_column, 'DD-MM-YYYY') || ' 23:59:00', 'DD-MON-YYYY HH24:MI:SS')

...changing 23:59:00 to whatever time you actually want. The double pipe (||) is what Oracle uses for string concatenation (it's also now ANSI standard).

卸妝后依然美 2024-10-02 03:11:59

要查看完整的日期和时间,您可以使用 TO_CHAR 格式掩码,如下所示:

select to_char (datecol, 'DD-MON-YYYY HH24:MI:SS') from mytable;

插入文字日期和时间时,使用 TO_DATE:

insert into mytable (datecol)
values (to_date('01-JAN-2010 11:23:45','DD-MON-YYYY HH24:MI:SS');

该格式只是一种可能性。例如,您可以使用以下任何一个:

YYYY-MM-DD HH24:MI:SS
MM/DD/YYYY HH24:MI:SS

To see the full date and time you can use a TO_CHAR format mask like this:

select to_char (datecol, 'DD-MON-YYYY HH24:MI:SS') from mytable;

When inserting a literal date and time, use TO_DATE:

insert into mytable (datecol)
values (to_date('01-JAN-2010 11:23:45','DD-MON-YYYY HH24:MI:SS');

That format is just one possibility. For example you could instead use any of these:

YYYY-MM-DD HH24:MI:SS
MM/DD/YYYY HH24:MI:SS
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文