检索最后10个结果ASC Left Join MySql

时间:2018-03-10 15:36:02

标签: mysql left-join

我正在尝试从排序为ASC的posts表中检索最后10个帖子,但最后一个左连接查询没有检索任何内容。

基本:它检索DESC订购的结果

SELECT 
    p.post, p.id_post, u.name
FROM 
    posts p
LEFT JOIN 
    users u ON u.id_user = p.id_user
WHERE 
    p.id_user = 4 
ORDER BY 
    p.date  DESC 
LIMIT 10

有序ASC :它根本不起作用:

SELECT 
    num.* 
FROM 
    (SELECT 
         p.post, p.id_post, u.name
     FROM 
         posts p
     LEFT JOIN 
         users u ON u.id_user = p.id_user
     WHERE 
         p.id_user = 4 
     ORDER BY 
         p.date DESC 
     LIMIT 10) num 
ORDER BY 
    p.date ASC

我做错了什么?

在我的php变量中,我使用$row['id_post'] $row['post'] $row['name']。我不想仅使用array_reverse()

sql

1 个答案:

答案 0 :(得分:0)

您需要在子查询中返回日期:

date

您的第二个查询应该返回一条错误消息,指出{{1}}未被识别为列。如果要编写有效的应用程序,则应该捕获并阅读错误消息。