php - 使用 MYSQL Distinct 和 PHP 显示一次年份

标签 php mysql distinct

我有一个带有日期行的表(新闻)。它包含格式为 (yyyy-mm-dd) 的日期。我想在我的 PHP 页面上只列出一次年份,但它不起作用。我收到错误: 注意:尝试获取

中非对象的属性

我做错了什么?

    <?php
       include 'includes/connect.php';
       $sql = "SELECT DISTINCT YEAR(date) FROM news ORDER BY date DESC";
       $result = $conn->query($sql);

       while($row = $result->fetch_assoc()) {
         $year = $row->date;
         $echo "$year<br />";
       }
    ?

最佳答案

为查询提供别名,因为别名比语句更容易识别,为列提供伪名称:

SELECT DISTINCT YEAR(date) AS mydate

然后,由于您要获取关联数组,因此请使用数组表示法:

$year = $row['mydate'];

关于php - 使用 MYSQL Distinct 和 PHP 显示一次年份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53620249/

相关文章:

sql - 将列值与不同值连接会得到奇怪的结果

php - PDO mysql select查询未执行

php - 为什么 css 不影响我的 PHP 页面?

php - stdClass 类的对象无法转换为字符串

mysql - SQL 连接和左外部连接 : why are the results different?

sql - SELECT DISTINCT 非常慢

javascript - 在表单提交时发送 div 的值

php - 将图像缩小到具有相同宽高比分辨率的固定宽度和高度

java - GWT + MySQL - 如何创建连接?

MySQL:根据原始表中的数据创建频率新表