发布网友 发布时间: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应当就可以呢,只是一点粗浅的想法,不知道对不对。