MYSQL 情况下根本不工作

标签 mysql sql case case-when

我正在尝试将我的 TIMESTAMP 转换为代表财政年度期间的字符串,例如四月至三月

以下是我的声明:

SELECT Year, Type
CASE 
WHEN date_format(SubmissionDate, '%Y')='2015' AND MONTH(SubmissionDate)
BETWEEN 4 AND 12 THEN '15-16'
WHEN date_format(SubmissionDate, '%Y')='2016' AND MONTH(SubmissionDate)
BETWEEN 1 AND 3 THEN '15-16'
END as Year
FROM Incidents

显然它失败了......我很清楚当涉及到 CASE 语句时,我是否接近?

最佳答案

您在类型之后错过了:

SELECT Year, Type,
CASE 
WHEN date_format(SubmissionDate, '%Y')='2015' AND MONTH(SubmissionDate)
BETWEEN 4 AND 12 THEN '15-16'
WHEN date_format(SubmissionDate, '%Y')='2016' AND MONTH(SubmissionDate)
BETWEEN 1 AND 3 THEN '15-16'
END as Year
FROM Incidents

关于MYSQL 情况下根本不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38325585/

相关文章:

mysql - 从字符串到整数的转换错误

php - 如果客户端断开连接,则停止执行 PHP 脚本

mysql - Shell 脚本选择记录,额外提供一行作为列名

java - 在 Java 中设置值失败

ruby-on-rails - 如果用户登录? CASE current_user.plan_id 否则...?

sql - 当一个值与其他值不同时,SQL Server

用于计数的mysql case语句

php - MySQL 插入语句因外键约束而失败

javascript - ES5 格式化长 SQL 查询的方法

如果变量组合不存在,MySQL 插入表