我有一个MYSQL查询,谁必须列出我要发布的所有帖子。但它不这样做。当我在表“ meaOrder”中有一个以上具有相同“ ordCode”的帖子时,它将显示帖子。但是,当我仅在meaOrder中发帖时,我不会显示它。我能做什么?

SELECT koden, wish, rnamn, bild, pris, cname, onsktext
                FROM (
                SELECT m.wishText as onsktext, m.meaOID as midn, m.ordcode as koden, w.wish as wish, r.meaName as rnamn, r.meaImg as bild,
                        r.meaPrice as pris, k.catName as cname from cats k, meals r, wishes w,
                        meaOrder m
                    join orders c on c.ordNR=4401
                    WHERE  c.ordStatus=1 AND m.ordNR=c.ordNR AND m.meaID=r.meaID AND m.wishesID=w.id
                        AND r.catID=k.catID
                ) T
                GROUP BY koden, rnamn, bild, pris, cname
                ORDER BY midn DESC


TABLE订单
http://grab.by/m74E

表格meaOrder http://grab.by/m74Q

最佳答案

在这种情况下,请尝试用RIGHT JOIN替换JOIN。差异在JOIN Syntax page in MySQL docs处说明。简而言之-仅在两个联接表(内部联接)中都有对应的行时,JOIN才返回行。 LEFT JOIN / RIGHT JOIN返回一个表中的所有行,如果另一个表中存在该行,则返回对应的行(那些是外部联接)

关于php - mysql查询不获取所有帖子,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16304118/

10-09 00:49
查看更多