我目前无法从数据库中获取与特定月份匹配的所有数据,并且仅显示该月份的所有数据.这是我试过的.
<?php
require('./connect.php');
?>
<?php
$name1 = $conn->prepare("SELECT * FROM garden WHERE MONTH(Apr)");
$name1->execute();
while($row = $name1->fetch()) {
$t = $row["temp"];
echo $t;
echo "sdasds";
}
?>
Run Code Online (Sandbox Code Playgroud)
数据库中包含time存储日期的列,12-Apr-2017我想查找月份或月份的所有详细信息.
你没有MONTH()正确使用.您需要将列标识符作为参数传递,并将其值与您想要的值进行比较,即4月是第四个月时的值:
SELECT * FROM garden WHERE MONTH(STR_TO_DATE(dateColumn, '%e-%b-%Y')) = 4
Run Code Online (Sandbox Code Playgroud)
如果您想要更可读的查询使用 MONTHNAME()
SELECT * FROM garden WHERE MONTHNAME(STR_TO_DATE(dateColumn, '%e-%b-%Y')) = 'April'
Run Code Online (Sandbox Code Playgroud)
您还会注意到我STR_TO_DATE()在您将日期存储为字符串而不是日期时使用.在将来,您应该考虑将日期存储为日期值,因为将它们转换为不同的格式很容易,这使得日期工作变得更加容易.
| 归档时间: |
|
| 查看次数: |
50 次 |
| 最近记录: |