有了这个SQL,我可以使用的可以按字母顺序选择下一个记录,但记录名称相同时会发生什么?
SELECT id
FROM `names`
WHERE `name` > (SELECT `name` FROM `names` WHERE `id` = X)
ORDER BY `name` ASC, `id` ASC
的ID抢按字母顺序排列的下一个名字但是我们asume我有这方面我有这些记录
id | name
---------
12 | Alex
8 | Bert
13 | Bert
17 | Bert
4 | Chris
说我有编号12作为参考我得到的结果
id | name
---------
8 | Bert
13 | Bert
17 | Bert
4 | Chris
但是,如果使用8作为参考,我得到
id | name
---------
4 | Chris
Bert 13和17会跳过。
当我通过12选择时不会跳过记录8 |亚历克斯 – Moak 2011-03-10 03:44:56
如果你在记录12上,它是'WHERE name>'Alex'OR(name ='Alex'AND id> 12)'。对于第8张专辑,“Bert”>“Alex''所以不会被跳过。 – Anomie 2011-03-10 03:46:54