PHP 查询排序问题

发布网友 发布时间:2022-04-06 07:02

我来回答

4个回答

热心网友 时间:2022-04-06 08:31

sql为什么要这样些呢?这样些不可以吗?
Select arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,
tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
from `#@__archives` arc left join `#@__arctype` tp on arc.typeid=tp.id
where (arc.title like '%$ww%' or arc.title like '%$ww%' or arc.title like '%$pp%' ) $typeid limit 0, $row";追问我是要分开查询的 不是查询 3个记录

我查询 A 查询如果满足条数 就不查询B 和C 补满足则继续查询B C

你里头没有说道排序啊

追答那就使用临时表吧,select * from (Select arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,
tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
from `#@__archives` arc left join `#@__arctype` tp on arc.typeid=tp.id
where arc.title like '%$yy%'
union all
Select arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,
tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
from `#@__archives` arc left join `#@__arctype` tp on arc.typeid=tp.id
where arc.title like '%$ww%'
union all
Select arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,
tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
from `#@__archives` arc left join `#@__arctype` tp on arc.typeid=tp.id
where arc.title like '%$pp%' $typeid limit 0, $row) tmp order by tmp.排序字段

热心网友 时间:2022-04-06 09:49

排序只是用在最终的显示,不管里面有多少个子查询,因此在......like '%$pp%' $typeid limit 0, $row";这个里面添加orderby,like '%$pp%' $typeid order by limit 0, $row";

热心网友 时间:2022-04-06 11:24

还真没试过这样用。能不能将你搜出来的东西放视图,再对视图排序一下?

热心网友 时间:2022-04-06 13:15

查询结果得到两个数组,用array_merge()函数合并数组,然后sort应当就可以呢,只是一点粗浅的想法,不知道对不对。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com