【问题标题】:Use STR_TO_DATE in sql with year change在带有年份变化的 sql 中使用 STR_TO_DATE
【发布时间】:2019-03-08 18:07:32
【问题描述】:

我有这个问题:

$sql = "SELECT * FROM giorni WHERE punto = '$punto' && STR_TO_DATE(giorno, '%d/%m/%Y') ...

我需要对上一年进行类似的查询。我该怎么办%Y-1

【问题讨论】:

  • 从日期开始使用INTERVAL 1 YEAR

标签: sql date str-to-date


【解决方案1】:

您可以简单地从转换后的日期中减去 1 年:

... STR_TO_DATE(giorno, '%d/%m/%Y') - INTERVAL 1 YEAR

【讨论】:

  • 谢谢,伙计!所以我确实喜欢这个 $sqlannoprima = "SELECT * FROM giorni WHERE punto = '$punto' && STR_TO_DATE(giorno, '%d/%m/%Y')- STR_TO_DATE('". $d1 之间的间隔 1 年。" ', '%d/%m/%Y') - 间隔 1 YEAR AND STR_TO_DATE('" . $d2 . "', '%d/%m/%Y')- 间隔 1 YEAR ORDER BY STR_TO_DATE(giorno, '%d/%m/%Y')- 间隔 1 年";
  • 老实说,如果我知道日期来自 PHP,我会使用 PHP(DateTime 类)简单地添加/减去/格式化它们。
  • 可以用 INTERVAL 加/减一个变量,例如 "-INTERVAL $variable YEAR" 吗?谢谢
  • 来自 PHP 的变量?是的。
猜你喜欢
  • 1970-01-01
  • 2017-03-04
  • 2020-11-07
  • 1970-01-01
  • 2021-10-29
  • 2021-02-23
  • 1970-01-01
  • 2011-11-15
  • 2012-01-20
相关资源
最近更新 更多