【问题标题】:Convert datetime to get month name in mysql转换日期时间以在 mysql 中获取月份名称
【发布时间】:2017-03-20 22:32:38
【问题描述】:

日期时间列数据为2016-11-03 00:00:00。我想从中获取月份和年份,并将月份编号转换为月份名称。

例如:

2016-11-03 00:00:00 --> 2016 年 11 月

代码片段

..WHERE MONTHNAME(MONTH(S.date)) AND YEAR(S.date) = '$date'..

月份年份选择器代码

这会将月/年格式输出为“2016 年 11 月”。

if(isset($_POST['monthPicker'])){$date = $_POST['monthPicker'];}

日期时间的数据库列名称是“S.date”

【问题讨论】:

    标签: mysql date datetime


    【解决方案1】:

    你的 Mysql-Query 是假的。试试这个:

    ..WHERE MONTHNAME(MONTH(S.date)) = '$date->MONTHNAME' AND YEAR(S.date) = '$date->Year'..
    

    【讨论】:

    • 不输出结果。
    • 您是否调整了变量,例如“数据-> 月名”?这只是一个例子,没有完全发挥作用。如果有人想在 where 子句中避免 concat,这是更好的解决方案。
    【解决方案2】:

    你可以使用 concat

    "select ..... 
     ...
    where concat(MONTHNAME(S.date), ' ' , YEAR(S.date))  = '$date';"
    

    【讨论】:

    • @EKBG 发挥了魔力,但你在一个看起来错误的答案中分配了正确的答案......(或者我的错......?)你定义不起作用......奇怪......如果我的回答是正确的,请将其标记为已接受。否则,如果您有问题,请告诉我
    猜你喜欢
    • 1970-01-01
    • 2018-12-21
    • 2010-12-11
    • 2017-02-07
    • 1970-01-01
    • 2021-01-01
    • 2021-08-21
    • 1970-01-01
    相关资源
    最近更新 更多