【问题标题】:How to create tables with correct data fomat in sql?如何在sql中创建具有正确数据格式的表?
【发布时间】:2022-01-21 21:41:48
【问题描述】:

在我的 sql 查询中,我得到如下输出。

insert into terminationdata (Name,Date,Calls,Answered_Calls,Total_Minutes) values('XXX',2021-12-17,'480298','120758.0','391238.6333') ON DUPLICATE KEY UPDATE name=VALUES(name),Date=VALUES(Date),calls=VALUES(calls),Answered_Calls=VALUES(Answered_Calls),Total_Minutes=VALUES(Total_Minutes)

我创建了一个如下的新表来保存所有数据。

create table terminationdata(
   Name VARCHAR(20) NULL ,
   Date DATETIME NULL ,
   Calls INT NULL DEFAULT '0',
   Answered_Calls INT NULL DEFAULT '0',
   Total_Minutes DECIMAL(8,2) NULL
 
  
);

查询工作正常,但日期未正确提取到表中。在表格中,日期显示为0000-00-00 00:00:00。我应该如何获得正确的日期(ex-2021/12/19)?

我试过 Date DATE NULL 而不是 Date DATETIME NULL 。但同样的错误存在。

【问题讨论】:

  • 哪个 dbms? DATETIME 是特定于产品的数据类型。

标签: python sql


【解决方案1】:

用单引号封装您的 datetime 值。它将自动转换为datetime(如果您的字符串值是有效的日期时间)。

insert into terminationdata (Name,Date,Calls,Answered_Calls,Total_Minutes) values('XXX','2021-12-17','480298','120758.0','391238.6333') ON DUPLICATE KEY UPDATE name=VALUES(name),Date=VALUES(Date),calls=VALUES(calls),Answered_Calls=VALUES(Answered_Calls),Total_Minutes=VALUES(Total_Minutes)

【讨论】:

  • 谢谢。它成功了。但是我应该如何只得到 2021-12-17 而不是 2021-12-07 00:00:00?
  • 日期日期 NULL ,
猜你喜欢
  • 1970-01-01
  • 2011-11-10
  • 1970-01-01
  • 2016-11-18
  • 2015-08-07
  • 1970-01-01
  • 2014-07-10
  • 1970-01-01
  • 2017-10-20
相关资源
最近更新 更多