mysql - 将SQLite请求中的strftime转换为MySQL

标签 mysql sql sqlite strftime

我转换了 SQLite 行

WHERE strftime('%d%m', orders.created_at) = .......

直接到 MySQL 怪物:

WHERE CONCAT(CAST(DAY(orders.created_at) AS CHAR), LPAD(CAST(MONTH(orders.created_at) AS CHAR), 2, '0')) = .........

请帮我把它重写成一个更短的。

最佳答案

STRFTIME()在 SQLite 中类似于 DATE_FORMAT()在具有反向参数的 MySQL 中。

因为 %d%m 在两者中映射到相同的东西,你的表达式可以简单地写成;

WHERE DATE_FORMAT(orders.created_at, '%d%m') = .......

关于mysql - 将SQLite请求中的strftime转换为MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24361074/

相关文章:

mysql - ORDER BY ... ASC 很慢, "Using index condition"

Mysql Group By用Count获取最新记录

python - SQLalchemy核心中AND和OR语句的语法?

php - MySQL服务器负载

php - 如何验证用户输入的密码是否与 MySQL 数据库中存储的哈希密码相匹配

SQL生成从1到100的数字列表

sql - 在 SQL Server 2016 中向 json 字符串添加新值

python - ImportError:没有名为weather_Core_Engine.weather_DB_Handler的模块

Android - 在 SQLite 数据库中保存位置

mysql - 对于所有世界语言,我必须使用 utf8_general_ci 或 utf8_unicode_ci 或任何其他排序规则?