我的問題是:我想移動一個特定的行到Java中的MSSQL結果集的末尾。 這怎麼辦?我在鏈接處發現了MySQL中的一個參考stackoverflow如何將特定行的ResultSet移動到MSSQL中的結尾?
但是,由於我使用的是MSSQL2008,所以它不適用於我。
我的問題是:我想移動一個特定的行到Java中的MSSQL結果集的末尾。 這怎麼辦?我在鏈接處發現了MySQL中的一個參考stackoverflow如何將特定行的ResultSet移動到MSSQL中的結尾?
但是,由於我使用的是MSSQL2008,所以它不適用於我。
你可能需要做一些像
ORDER BY CASE WHEN column = 'value' THEN 1 ELSE 0 END
不能確定確切的SQL Server特定的語法,但這樣的事情通常工作。
一些細節可以幫助你回答這個問題,但是最常見的做法是使用你的sql中的「order by」子句,然後讓數據庫進行排序你的結果集。爲了更正確或完整的答案,我認爲我們需要更多地瞭解您的問題。但我希望這至少能讓你開始。
感謝vruum的答案。但Order By條款不能滿足我的要求。因爲我必須將第n行定位到ResultSet的最後一行,以使其與ResultSet中最後一行的行爲完全相同。歡迎進一步的建議。 – yayayokoho3
結果集並不是真的那樣工作。它更像是一個指向行的指針,在數據庫生成的表中作爲對查詢的響應,可以遞增(有時遞減)。它不能被排序或排序,儘管一些結果集是可更新的並且支持插入/更新,但這是特定於驅動程序的。 請參閱[鏈接](http://download.oracle.com/javase/tutorial/jdbc/basics/retrieving.html#rs_update) 因此,您最好的選擇是使用SQL來爲您排序,或者對客戶端代碼中的結果。 – vruum
感謝vruum提供的積極答案。我很抱歉,有人對你之前的回答低估了。現在我已經解決了我的問題。 – yayayokoho3
謝謝馬克的答案。實際上,我的確使用了與您的回答完全相同的方式,但情況值略有不同,以符合我的要求。 – yayayokoho3