我需要在一个MySQL表中添加一个虚拟列,该表存储从(同一个表的)另一个列生成的时间戳值。
我不能将现有的列转换为时间戳,因为它可能会破坏许多其他进程,因此,为了更快地查询我的数据库,我需要一个具有相同数据但格式正确的列。
我尝试用缺省值创建一个虚拟列
TIMESTAMP('field_date_text')但结果是NULL。'field_date_text'字段的格式为"d/m/Y H:i"
从另一个字段添加虚拟列作为时间戳的正确语法是什么?
发布于 2019-04-17 00:03:39
您可以使用TIMESTAMP()或UNIX_TIMESTAMP()和/或STR_TO_DATE()
TIMESTAMP(STR_TO_DATE(field_date_text, '%d/%m/%Y %h:%i'))或
UNIX_TIMESTAMP(STR_TO_DATE(field_date_text, '%d/%m/%Y %h:%i'))或者仅仅是STR_TO_DATE()
STR_TO_DATE(field_date_text, '%d/%m/%Y %h:%i')发布于 2019-04-17 14:52:27
我使用此函数作为虚拟计算值进行求解
TIMESTAMP(str_to_date('field_date_text','%d/%m/%Y %H:%i'));https://stackoverflow.com/questions/55712284
复制相似问题