PHP查询日期排序多个查询结果

时间:2016-11-07 19:59:35

标签: php mysql

我必须从mysql数据库中提取数据,但是按日期顺序。我使用foreach命令来获取数据,但是当数据是echo时,它是每个foreach结果的日期顺序。

$userId = '29';

$sql="SELECT friendID FROM friendlink WHERE userId='$userId'";
$result=mysqli_query($conn,$sql);

while($row=mysqli_fetch_assoc($result)) {

        foreach ($row as $value) {

        //echo $value; //echos name of the person

        $sql="SELECT * FROM messages WHERE userId='$value' ORDER BY date";
        $result2=mysqli_query($conn,$sql);

                while($row2=mysqli_fetch_assoc($result2)) {

                $message = $row2['message'];
                echo $message;
                echo "<br />";



                } //end while

        } //ends foreach

} //end while

任何人都可以推荐更好的方法来解决这个问题。我需要了解如何通过一次性广告从数据库中获取数据,然后对结果进行排序。

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用INNER加入。请尝试以下代码。我希望它有效。

$userId = '29';
$sql="SELECT * FROM friendlink INNER JOIN messages ON friendlink.friendID=messages.userId ORDER BY date";
$result=mysqli_query($conn,$sql);
while($row=mysqli_fetch_assoc($result)) 
{

        $message = $row['message'];
        echo $message;
        echo "<br />";
}