我有一个表在MySQL -为了通过特定条件
ABC (User, Login_time, City)
,并包含它的一些数据。
我想要的结果是排名前5的用户表单诺伊达应该在结果集中排在最前面,其余结果集应该按login_time排序。看到这里的小提琴 -
http://www.sqlfiddle.com/#!9/88c203/9
create table abc (user varchar(20), login_time date, city varchar(20));
insert into abc values ('A', curdate(), 'Noida'),
('B', '2017-04-16', 'Delhi'),
('C', '2017-04-14', 'Noida'),
('D', '2017-04-18', 'Kanpur'),
('E', '2017-04-13', 'Raebareli'),
('F', '2017-04-16', 'Sitapur'),
('G', '2017-04-17', 'Muradabad'),
('H', '2017-04-18', 'Noida'),
('I', '2017-04-13', 'Lucknow'),
('J', '2017-04-12', 'Noida');
预期的结果是 -
'A', 2017-04-19, 'Noida'
'C', '2017-04-14', 'Noida'
'H', '2017-04-18', 'Noida'
'D', '2017-04-18', 'Kanpur'
'G', '2017-04-17', 'Muradabad'
'B', '2017-04-16', 'Delhi'
'F', '2017-04-16', 'Sitapur'
'E', '2017-04-13', 'Raebareli'
'I', '2017-04-13', 'Lucknow'
'J', '2017-04-12', 'Noida'
,我试图查询是 -
select * from (select user, login_time, city from abc
where city = 'Noida'
limit 3
union all
select user, login_time, city from abc
where user not in (select user, login_time, city from abc
where city = 'Noida'
limit 3)
limit 4, count)
order by login_time
当我尝试执行查询在小提琴它抛出错误 -
This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery
任何帮助将不胜感激。
你的SQL小提琴时,我用它不起作用。把代码放在你的问题中。此外,问题中的样本数据和所需结果也会有所帮助。目前还不清楚“前五名”的含义。 –