我有一个要求,我需要选择不同的雇主id与活动作业,但困难的是我必须限制查询总是返回偶数行。
例如
如果有活跃工作的独立雇主是10,那么它可以返回10,这甚至没有问题,但如果有活跃工作的雇主数量是9,那么应该将其限制为8。
注意:此要求是确保页面具有偶数行将使显示中的页面平衡。其次,我知道我可以在编码上做到这一点,但我正在寻找更多基于MySQL查询的解决方案,如果可能的话,因为结果缓存在memcached中,它使得在编码级别执行此操作的事情变得复杂。
答案 0 :(得分:3)
如果计数是奇数,目前尚不清楚你想对最后一条记录做什么。
另外我认为你应该在客户端这样做。
例如,您的表A
包含字段val
。您需要偶数个val
:
select val
from
(
select val,
@rn:=@rn+1 rownum
from (select distinct val from A) A1,
(select @rn:=0) t1
order by val
) T2
where rownum<=
((select count(distinct val) from A) div 2)*2