Php 为什么Mysql order by不';不适用于此查询
我有一个疑问:Php 为什么Mysql order by不';不适用于此查询,php,mysql,sql-order-by,Php,Mysql,Sql Order By,我有一个疑问: SELECT * FROM ( SELECT p.id, product, unique_name, price, old_price, category_id, added_date FROM products p, products_to_categories ptc, products_to_adverts pta WHERE p.id=ptc.product_id AND (expire_date > now() OR expire_
SELECT *
FROM (
SELECT p.id, product, unique_name, price, old_price, category_id, added_date
FROM products p, products_to_categories ptc, products_to_adverts pta
WHERE p.id=ptc.product_id AND (expire_date > now() OR expire_date=0)
AND p.id=pta.product_id AND p.active=1 AND p.instock=1 AND p.top_product="1"
and p.id not in (58,59,70,88,92,106,107,108,109)
and pta.advert_id not in (1,4,5,6,7,9,13,15,17)
ORDER BY added_date DESC
) as t GROUP BY id LIMIT 0,32
添加的日期字段为日期时间
谢谢 不能在子查询中使用order by。尝试改用临时表。您不能在查询中这样使用order by。因为我认为这是错误的。如果您可以使用sql
CASE
跟随这篇文章
[除了查询嵌套没有任何意义之外,您的
GROUP BY id
可能会干扰子查询的ORDER BY
。added_date的别名您需要添加架构,最好是一些示例数据/所需结果,以获得此查询的完整帮助,但外部查询中的GROUP BY
将被删除在您的内部查询中,由ORDER by
创建的所有排序都不会对输出进行排序。是的,您很好。问题通过在适当的位置移动ORDER by解决,谢谢!