【问题标题】:How to concatenate date and time columns based on value from another column in sql?如何根据sql中另一列的值连接日期和时间列?
【发布时间】:2015-05-07 20:30:06
【问题描述】:

我的 SQL 表中有三列:DateTimeCheck

我想将日期和时间值连接到基于检查列的日期时间列中。

Check 列包含一个 varchar 值“今天”或“明天”。因此,如果 Check 值为 'Today',则 Time 应与今天的日期连接,否则,如果 Check 值为 'tomorrow',则时间应与明天的日期连接。

有没有办法用 SQL 语句连接基于另一列的两列?

【问题讨论】:

  • 所以你不需要Date专栏?

标签: mysql sql datetime concatenation


【解决方案1】:

如果你正在做一个选择,那么你可以这样做

select
date,
time,
case 
 when check = 'Today' then concat(curdate(),' ',time)
 when check = 'Tomorrow' then concat( date_add(curdate(),interval 1 day) ,' ', time ) 
 else concat(date,' ', time) 
 end as datetime
from table_name

现在如果你想更新,那么你可以这样做

update table_name 
set 
datetime =  case 
     when check = 'Today' then concat(curdate(),' ',time) 
     when check = 'Tomorrow' then concat( date_add(curdate(),interval 1 day) ,' ', time ) 
     else concat(date,' ', time) 

您可以忽略else 部分或根据需要将其设置为其他内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-21
    • 2021-12-03
    • 2018-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多