【问题标题】:How to insert creation date of some tables into a new table?如何将某些表的创建日期插入新表?
【发布时间】:2017-05-20 00:07:53
【问题描述】:

我有这样的表:

我通过选择该表上的日期手动插入生成时间,但我现在只需要从中获取生成时间:

我可以做些什么来获取创建日期以便可以将创建日期输入到表格中?提前致谢

PS:我知道table的创建时间可以在information_schema中显示。但是有没有办法将创建时间输入到新表中?结果的例子是这样的ibb.co/gO5xNa

【问题讨论】:

  • 您的查询是什么?如何计算 creation date 值?它是一个常数(固定)吗?
  • 还是不知道你想达到什么目的?是否要默认添加当前时间作为创建时间?这样 DBMS 会自动插入查询运行的时间?
  • 我想将 information_schema 中表的创建时间添加到新表中@flutter

标签: mysql sql


【解决方案1】:

您应该能够从INFORMATION_SCHEMA.TABLES 中的CREATE_TIME 列获取此信息

例子:

SELECT TABLE_NAME, CREATE_TIME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'yourSchema'
;

【讨论】:

  • 是的,我知道table的创建时间可以显示在information_schema中。但是有没有办法将创建时间输入到新表中?结果的例子是这样的ibb.co/gO5xNa
  • CREATE TABLE newtable AS SELECT CREATE_TIME as 'generatedTime', TABLE_NAME as 'tempTable', true as 'NeedsToUpdateOrNot' FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'yourSchema' ?您必须设置更新列
  • 如果不明显,您当然可以执行WHERE 'table_name' LIKE 'temp%' 之类的操作来仅获取架构中名为 tempXXX 的表,或者您可以将它们移动到自己的架构中。跨度>
  • 感谢您帮助我解决了这个问题。上帝保佑你;)祝你有美好的一天
【解决方案2】:

【讨论】:

  • 是的,我知道table的创建时间可以显示在information_schema中。但是有没有办法将创建时间输入到新表中?结果的例子是这样的ibb.co/gO5xNa
  • @Neha INSERT INTO table2 (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM table1 WHERE 条件;会做吗?
【解决方案3】:

This link shows you a halfway duplicate of your question

将此与更新或插入相结合,您将能够做您想做的事情。

【讨论】:

  • 是的,我知道table的创建时间可以显示在information_schema中。但是有没有办法将创建时间输入到新表中?结果的例子是这样的ibb.co/gO5xNa
【解决方案4】:

您是否尝试过查看 INFORMATION_SCHEMA.TABLES 中的 CREATE_TIME 字段?

【讨论】:

  • 是的,我知道table的创建时间可以显示在information_schema中。但是有没有办法将创建时间输入到新表中?结果的例子是这样的ibb.co/gO5xNa
  • 这不是问题的答案。这是一条评论。
  • CREATE TABLE tablename as SELECT CREATE_TIME FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = 'yourdb';或者在现有表中你可以这样做 INSERT INTO tablename (field) SELECT CREATE_TIME FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = yourdb'';
猜你喜欢
  • 2021-06-08
  • 2016-03-23
  • 1970-01-01
  • 1970-01-01
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-10
  • 1970-01-01
相关资源
最近更新 更多