查询失败您的SQL语法中有错误;靠近'DESC'的第1行

时间:2018-02-18 14:08:50

标签: mysql sql

我尝试了很多解决方案,但都没有。如果我注释掉DESC查询页面加载正常但没有注释,如果我把查询放回去,我得到错误。我无法看清我做错了什么,并坚持到这一点,直到我解决它。任何帮助将不胜感激。

    <!-- Posted Comments -->

<?php //post comments query
$query = "SELECT * FROM comments WHERE comment_post_id = {$the_post_id} ";
$query .= "AND comment_status = 'Approved' ORDER BY comment_id = DESC ";
//$query .= "ORDER BY comment_id = DESC ";
$select_comment_query = mysqli_query($connection, $query);
if(!$select_comment_query) {

    die('Query Failed' . mysqli_error($connection));

}
while ($row = mysqli_fetch_assoc($select_comment_query)) {
$comment_date = $row['comment_date'];
$comment_content = $row['comment_content'];
$comment_author = $row['comment_author'];

?>

<!-- Comment -->
<div class="media">
    <a class="pull-left" href="#">
        <img class="media-object" src="http://placehold.it/64x64" alt="">
    </a>
    <div class="media-body">
        <h4 class="media-heading"><?php echo $comment_author; ?>
            <small><?php echo $comment_date; ?></small>
        </h4>
        <?php echo $comment_content; ?>
    </div>
</div>

<?php } ?>

</div>

2 个答案:

答案 0 :(得分:2)

我认为=是不必要的。也许你打算:

ORDER BY comment_id DESC

此命令按comment_id降序排序。

或者,如果您希望首先显示特定的comment_id

ORDER BY comment_id = ? DESC

?是您想要的值。

答案 1 :(得分:0)

排序依据列名称使用默认值ASC。

如果要按降序对数据进行排序,则在列名称后添加空格并添加ASC或desc 按升序排序

Order by column_name ASC
Or
Order by column_name

按降序排序

Order by column_name DESC