php 网页 order by 排序无效
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 网页 order by 排序无效相关的知识,希望对你有一定的参考价值。
SELECT ad_id,ad_date_begin,ad_type,ad_title,ad_description,ad_price,ad_status FROM ads WHERE ad_status=1 ORDER BY ad_date_begin DESC
无论 ORDER BY 什么,也无论 DESC 还是 ASC 都是乱序排列,请教会是什么因素影响?
新手 建议在 phpmysqladmin里执行下语句看是否有效 再写代码 参考技术A sql语句完全没有问题。
php查询使用“Order By .... Limit”后如何使用“Order by”?
【中文标题】php查询使用“Order By .... Limit”后如何使用“Order by”?【英文标题】:php query how to use "Order by" after using "Order By .... Limit"? 【发布时间】:2020-11-19 14:28:31 【问题描述】:我想在我的 php 网站上显示 10 个最新项目的排序功能。
所以通常会显示 10 个按创建日期排序的最新项目,我想对这 10 个项目按价格排序。
总共有大约 100 个项目
table1 包含“项目编号”、“创建日期”
table2 包含 'item number','price'
我首先通过连接两个表来获取整个数据集,按创建日期排序,然后将前 10 个结果作为最新项目。在这一点上,它显示了我想要的。
$sql_All_Item="SELECT * FROM table1 LEFT JOIN table12 ON table1.ITEM_NO = table2.ITEM_NO ORDER BY table1.Create_Date DESC LIMIT 10";
但我不知道如何在此查询中为另一个“排序依据”创建排序功能,以获取最新的 10 件商品并显示这 10 件商品的价格下降或上升。
【问题讨论】:
如果你把价格放在第二位,商品是按价格排序的,当它们有相同的创建日期时,你为什么不给我们一些你想要的数据和结果 请***.com/help/minimal-reproducible-example分享一些样本和预期结果。小心拼写错误table2
而不是 table12
【参考方案1】:
您需要嵌套查询,并在外部查询中执行最终排序:
SELECT *
FROM (
SELECT * -- better enumerate the columns here than use "*"
FROM table1 t1 -- table aliases make the query easier to write and read
LEFT JOIN table2 t2 ON t1.ITEM_NO = t2.ITEM_NO
ORDER BY t1.Create_Date DESC
LIMIT 10
) t
ORDER BY price desc
【讨论】:
看来这就是我需要的! ) t 做什么?以上是关于php 网页 order by 排序无效的主要内容,如果未能解决你的问题,请参考以下文章