在 MySQL 表之间将 string/varchar 转换为日期

2023-11-30

我有一个大型 PHP 项目,我一直在为自己的业务开发该项目。

我有一个 MySQL 表,大约有 2600 个条目,我想“修复”其中的日期。我当前的表有 3 个包含字符串日期的 VARCHAR 列。我想将它们转换为重复的表,但在途中将它们更改为键入 DATE。

一旦我进行转换并且一切看起来都很好,我将把新表复制到旧数据库,并且只允许日期选择器在未来的基础上输入这些日期。

大多数现有的字符串日期都采用这种格式mm-dd-yyyy, 例子:05-03-2013。有些是mm/dd/yyyy, 例子:05/03/2013,还有一些是 MONTH DAY, YEAR 格式,例如:March 26th, 2013.

我最终想要的是他们成为yyyy-mm-dd格式,示例:2013-05-02.

I think我可以使用 PHP 来做到这一点,通过 strtotime() 然后 date() 传递每个字符串日期,但想知道 MySQL 是否可以直接做到这一点。


看一下STR_TO_DATE功能:

UPDATE yourtable
SET
  new_column = STR_TO_DATE(varchar_date, '%m-%d-%Y')
WHERE
  STR_TO_DATE(varchar_date, '%m-%d-%Y') IS NOT NULL

然后同样的查询,日期格式为'%m/%d/%Y',然后再次与'%M %D, %Y'。 如果格式不匹配,STR_TO_DATE 将返回 NULL 并且行不会更新。

如果您希望将现有数据插入到新表中,可以使用如下内容:

INSERT INTO new_table (ID, col1, col2, new_column)
SELECT
  ID, col1, col2,
  COALESCE(STR_TO_DATE(varchar_date, '%m-%d-%Y'),
           STR_TO_DATE(varchar_date, '%m/%d/%Y'),
           STR_TO_DATE(varchar_date, '%M %D, %Y'))
FROM oldtable

(new_column 是一个日期列,然后您可以使用 PHP 或使用 DATE_FORMAT 设置您想要的格式)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 MySQL 表之间将 string/varchar 转换为日期 的相关文章

  • Preg_replace() 删除除查询结尾之外的所有内容

    首先 为我糟糕的英语感到抱歉 我有这样的疑问 SELECT t1 SELECT COUNT FROM table a t2 WHERE t1 id t2 id c AND t2 status 1 AS aula FROM table c t
  • MySQL 按主键排序

    某些 SQL 服务器允许使用通用语句 例如ORDER BY PRIMARY KEY 我不相信这适用于 MySQL 是否有任何此类解决方法可以允许跨多个表自动选择 或者是否需要查找查询来确定主键 我一直在研究的解决方法包括调用SHOW COL
  • R 根据事件更新值

    我最近发布了这个问题 该问题已经与我在笔记本电脑上本地使用的 Mysql 数据库相关 由于我在 Mysql 中没有找到问题的解决方案 其他人似乎也没有找到解决方案 所以我想再次发布它 但现在与 R 相关 我使用带有 RMysql 包的数据库
  • 通过货币换算获取每种产品类型的最低价格

    我想选择每种产品类型中最便宜的 包括运费 价格转换为当地货币 最便宜 产品 价格 产品 运费 seller to aud 我的数据库有如下表 PRODUCTS SELLERS id type id seller id price shipp
  • C#:SQL 查询生成器类

    在哪里可以找到好的 SQL 查询构建器类 我只需要一个简单的类来构建 SQL 字符串 仅此而已 我需要它用于 C 和 MySql 我真的不需要像 Linq 或 NHibernate 这样的东西 谢谢 由于 Google 将我引导至此页面 我
  • 在docker中使用MySQL数据库设置aspnetcore

    我正在尝试设置一个 docker compose 文件 其中包含 asp net core mysql 数据库和 phpmyadmin 的容器 设置我的 mysql 服务器没有问题 我可以使用 phpmyadmin 访问它 我的 asp n
  • git 命令显示所有(轻量级)标签创建日期

    是否有一个衬垫可以向我显示所有 git 轻量级标签的创建日期 就像是 git show tags format date 我在这个发现link http osdir com ml git 2009 05 msg01404 html适合我需求
  • PHP 选择后立即删除

    我有一个 PHP 服务器脚本 它从 MySQL 数据库中选择一些数据 一旦我将 mysql query 和 mysql fetch assoc 的结果存储在我自己的局部变量中 我就想删除我刚刚选择的行 这种方法的问题在于 PHP 似乎对我的
  • SQLAlchemy 默认日期时间

    这是我的声明模型 import datetime from sqlalchemy import Column Integer DateTime from sqlalchemy ext declarative import declarati
  • MySql 最后插入 ID,连接器 .net

    我正在使用 MySql Connector net 我需要获取最后一个查询生成的插入 id 现在 我假设返回值是MySqlHelper ExecuteNonQuery应该是最后一个插入id 但它只返回1 我正在使用的代码是 int inse
  • 如何在 phpmyadmin 中创建 MySQL 触发器

    我想在 MySQL 中创建一个触发器 我运行以下命令 mysql gt delimiter mysql gt CREATE TRIGGER before insert money BEFORE INSERT ON money gt FOR
  • Python:如何使用生成器来避免 sql 内存问题

    我有以下方法来访问 mysql 数据库 并且查询在服务器中执行 我无权更改有关增加内存的任何内容 我对生成器很陌生 并开始阅读更多有关它的内容 并认为我可以将其转换为使用生成器 def getUNames self globalUserQu
  • 查询中列的顺序重要吗?

    当从 MySQL 表中选择列时 与表中的顺序相比 选择列的顺序是否会影响性能 不考虑可能覆盖列的索引 例如 您有一个包含行 uid name bday 的表 并且有以下查询 SELECT uid name bday FROM table M
  • 如何在 Laravel 查询中使用多个 OR,AND 条件

    我需要 Laravel 查询帮助 我的自定义查询 返回正确结果 Select FROM events WHERE status 0 AND type public or type private 如何写这个查询Laravel Event w
  • 阻止注销页面后的后退按钮

    我有 php 注销页面 当用户单击注销链接时 请参阅此页面并重定向到索引页面 但是当单击后退按钮时 我会看到带有用户数据的上一页 当然 当我刷新页面时 我看不到以前的页面和数据 我在单击注销并单击后退按钮后检查了其他代码 drupal 但我
  • MySQL Connector/C++ 库链接错误问题

    PROBLEM 好吧 我一直在尝试遵循 MySQL Forge Wiki 和其他一些网站上的示例代码 这些网站提供了有关如何获得简单数据库连接的教程 但由于某种原因 我的项目总是因链接错误而失败 我可以我自己不明白为什么或如何解决它 我仍在
  • 第三个下拉菜单不从数据库填充

    我有以下 Index php
  • Mysql 检索所有有限制的行

    我想检索特定用户的所有行 限制为 0 x 所以我只是想问是否有任何方法可以检索 mysql 中的所有行 而不调用返回 x 的 count id 的方法 而不重载现有函数 该函数在查询中根本没有限制 与我们的 string Relace 功能
  • MySQL 使用 ALTER IGNORE TABLE 出现重复错误

    我的 MySQL 中有一个有重复项的表 我尝试删除重复项并保留一项 我没有主键 我可以通过以下方式找到重复项 select user id server id count as NumDuplicates from user server
  • 在 MySQL 中使用 COUNT 时如何返回 0 而不是 null

    我使用此查询返回存储在 sTable 中的歌曲列表以及存储在 sTable2 中的总项目数 SQL queries Get data to display sQuery SELECT SQL CALC FOUND ROWS str repl

随机推荐

  • 检测和响应任何多边形内的球与墙碰撞

    需要编写良好的方法来检测和响应任何多边形内的球与墙的碰撞 例如 我有一个方法可以绘制一个在矩形内飞行的球 ctx beginPath ctx arc x y ballRadius 0 Math PI 2 ctx fillStyle 0095
  • Jasper 子报告未显示

    我有一份主要报告 调用2个不同的子报告两次 每次使用不同的参数 问题是显示不正确 LETTEROFACK TRANSF LTR 根本不来
  • 将数组从 php 发送到 python

    我正在尝试将一个数组从 php 传递到 python 由于某种原因 当我加载 php 页面时 我遇到了麻烦 所以如果人们建议我尝试不同的方法或者如果人们发现一个简单的方法 我将非常感激我在这里失踪了错误 因为我已经尝试这样做几个小时了 Th
  • 新工作表上的 VBA 数据透视表

    我已经录制了一个宏来在 VBA 中创建数据透视表和后续图表 它就像一种魅力 只是完全不是我需要的那样 问题是我希望能够运行代码并让它在尚不存在的工作表上创建一个表 基本上我将通过菜单上的按钮运行它 它应该在新页面上创建表格和图表 无需进一步
  • 从 Access 数据库收集数据

    我想从 Access 数据库的某些表中收集一些数据 我在网上找到了一些解决方案 但我还没有找到填充数据表或数据集并正确获取每个字段的方法 对我来说 获取整个表然后只获取我想要的信息是否更容易 或者我应该在访问数据库中进行大量搜索 每次只获取
  • 调试 PDO mySql 将 NULL 插入数据库而不是空

    我正在尝试使用 PDO 将 NULL 动态插入数据库 表结构 CREATE TABLE IF NOT EXISTS Fixes Id int 11 NOT NULL AUTO INCREMENT COMMENT PK CurrencyId
  • 没有名为 pkg_resources 的模块

    我正在将 Django 应用程序部署到开发服务器 并且在运行时遇到此错误pip install r requirements txt Traceback most recent call last File var www mydir vi
  • 当矩形与另一个矩形重叠时 OpenCV 连接轮廓

    我有以下输入图像 我的目标是绘制红色区域的轮廓 为此 我有以下代码 导入CV2 Read image src cv2 imread images jpg cv2 IMREAD GRAYSCALE Set threshold and maxV
  • IntelliJ IDEA Grails 没有看到 Jar

    我试图在 Linux 系统上的 Grails 项目中引用 IntelliJ IDEA 9 0 2 中的类 我将依赖项添加到BuildConfig groovy dependencies specify dependencies here u
  • “Substring” GridView BoundField 对象

    谁能告诉我如何对 GridView BoundField 对象进行子字符串化 到目前为止我已经尝试过了 但还没有成功 谢谢
  • 实体框架一对一映射问题

    使用VS 2010 beta 2 ASP NET MVC 我尝试创建一个实体框架文件并从数据库中获取数据 关系存在一些问题 因此我开始进行调整 但对于简单的一对一关系 我不断收到以下错误 错误 1 错误 113 多重性在关系 FK User
  • SWFTools 分段错误

    使用 swftools 中的 pdf2swf 将 PDF 转换为 SWF 时 出现分段错误 核心转储 错误 有没有人遇到过这个或知道可能出了什么问题 我在错误发生之前收到的通知是 NOTICE File contains jpeg pict
  • Google API - 每次都强制授予权限

    我正在使用 Google API PHP 客户端 每次我尝试登录时 我都被迫向应用程序授予权限 下面是我的代码 我基本上是访问 Google API for Analytics require once lib apiClient php
  • cvReprojectImageTo3D -2d 图像的 3d 建模问题 -

    我非常需要你关于这个问题的帮助 我正在尝试用 2D 图像对一个简单的场景进行 3D 建模 我使用 2 张图像 左 右 著名的筑波场景 http www cc gatech edu classes AY2003 cs7495 fall Pro
  • php 警告:strtotime() 错误

    我已将 joomla 和 wordpress 文件从旧服务器更改为新服务器 在前端和管理端 它的工作没有任何错误 但在数据库 phpmyadmin 部分它显示了一些像这样的警告消息 Warning strtotime function st
  • Post/Put 请求的路由错误(乘客标头)

    我遇到了一个奇怪的问题 经过一系列研究后无法更接近 我有几个通过 Carrierwave 上传文件的表单 当我上传信息时 部分路线被切断 我认为 例如 我有一个多部分表单提交到 https domain programs 223 add f
  • 线性回归 scala.MatchError:

    在 Spark 1 6 1 和 2 0 中使用 ParamGridBuilder 时出现 scala MatchError val paramGrid new ParamGridBuilder addGrid lr regParam Arr
  • SwiftUI:更新变量时导航链接会弹出

    我遇到这样的问题 更新变量时导航链接会弹出 这有点令人困惑 因为这种行为不会发生在应用程序的其他地方 但我正在做同样的事情 首先 有一个符合可识别性的 Vehicle 结构 在内容视图中 它显示在滚动视图中的 NavigationView
  • 使用类型保护时出现奇怪的范围问题

    假设我们有这样的打字稿代码 interface A bar string const isA
  • 在 MySQL 表之间将 string/varchar 转换为日期

    我有一个大型 PHP 项目 我一直在为自己的业务开发该项目 我有一个 MySQL 表 大约有 2600 个条目 我想 修复 其中的日期 我当前的表有 3 个包含字符串日期的 VARCHAR 列 我想将它们转换为重复的表 但在途中将它们更改为