首页 > 解决方案 > 在 SQL 查询中更新 MariaDB 的 Convert() 操作

问题描述

既然我们已经转移到 MariaDB 而不是使用 SQL Anywhere,我将根据需要更新一些 SQL 查询。我需要更改的一条线涉及一项convert()操作。MariaDB 的语法convert()声明这需要两个参数,值和数据类型 - 数据类型应该是第二个。那么,既然如此,我将如何为 MariaDB 更新这一行?

CONVERT(a.time_started, 100, CHAR) AS 'Waiting Since',

我尝试将前两个括在括号中,如下所示:

CONVERT((a.time_started, 100), CHAR) AS 'Waiting Since',

...但这产生了关于拥有一个操作数的错误。

我对 MongoDB 比对 SQL 更熟悉,所以我也想了解100这一行中的 代表什么。

那么这代表什么,应该如何重写它以与 MariaDB 一起使用?

标签: sqlmariadb

解决方案


CONVERT 的 SAP 文档中,格式掩码100对应于以下格式掩码:

mmm dd yyyy hh:nnAM (or PM)

例如:

 Sep  9 2019  2:24PM

我们可以尝试使用 MariaDB DATE_FORMAT,如下所示:

DATE_FORMAT(a.time_started, '%b %d %Y %r') AS `Waiting Since`

推荐阅读