2013-07-20 26 views
-2

我有一個UNION SQL查詢可以生成無序的一組行。結果與 在無序的行集上選擇下一行或上一行

 
+----+----------------------+-------+ 
| id | name     | value | 
+----+----------------------+-------+ 
| 3 | John     | 21 | 
+----+----------------------+-------+ 
| 2 | Jim     | 5  | 
+----+----------------------+-------+ 
| 4 | Adrian    | 25 | 
+----+----------------------+-------+ 
| 1 | Sam     | 22 | 
+----+----------------------+-------+ 

相同如果選擇第二行,如何選擇下一行或上一行?

+0

您可以發佈您的查詢.. – bgs

+0

查詢:(選擇ID,名稱,價值從買家訂單ID)聯合(選擇ID,名稱,價值從賣家訂單ID) –

回答

1

提供在MySQL中失蹤rownum功能常見的伎倆:

SELECT 
    @rownum:[email protected]+1 AS rownum, 
    id, name, value 
FROM 
    (
     (SELECT id, name, value FROM buyers ORDER BY id) 
     UNION 
     (SELECT id, name, value FROM seller ORDER BY id) 
    ) subq, 
    (SELECT @rownum:=0) r; 

然後使用rownum場行之間進行導航。