选择MySQL结果集中的结果

时间:2013-01-31 20:08:57

标签: mysql activerecord mysqli

我正在提取一系列县,并且需要能够根据网址指定哪一个将在结果集中排在第一位。剩余的县可以是任何顺序。我事先不知道县ids我只知道他们处于特定的状态。例如:

  

NJ /县/卑尔根

应该拉起来

  

卑尔根

     

帕塞伊克

     

埃塞克斯

     

莫里斯

     

萨塞克斯

     

哈德森

     

联盟

     


  

NJ /县/莫里斯

应该拉起来

  

莫里斯

     

帕塞伊克

     

埃塞克斯

     

卑尔根

     

萨塞克斯

     

哈德森

     

联盟

     

依旧等等。

1 个答案:

答案 0 :(得分:1)

编辑2 删除了之前的答案,因为它们几乎没有增加价值。

调试查询:

SELECT * from counties ORDER BY county like 'Essex' DESC, county ASC

原因可行:county like 'Essex'的计算结果为真/假或更具体:1或0.我将这些降序排序,匹配(1)将位于顶部,任何不匹配(0)在底部。第二个ORDER BY字段只是确保列表的其余部分按字母顺序排列。

SQL小提琴:http://sqlfiddle.com/#!2/a6a738/5

对于后代,这里是我使用的表:

CREATE TABLE counties 
(
 id int auto_increment primary key, 
 county varchar(20)
);

INSERT INTO counties
(county)
VALUES
('Bergen'),('Passaic'),('Essex'),('Morris'),('Sussex'),('Hudson');