タイトル : Re^3: SQL-Server2008 投稿日 : 2010/04/28(Wed) 09:18 投稿者 : 魔界の仮面弁士
> 何か方法なり原因(SQL-Serverの変更点?)がおわかりであればご教授下さい. 強いて原因を挙げるなら「コーディング漏れ」だと思います。アプリ作成時のバグですね。 SQL での ORDER BY 指定、あるいは取得後のソート作業のいずれかが必要になります。 もう少し詳細な推測情報としては、このあたり。 [SQL Server デベロッパーセンター] - [ORDER BY なしでSELECTが返す行の順番について] http://social.msdn.microsoft.com/Forums/ja-JP/sqlserverja/thread/e4411e28-0f93-48a4-90fa-07261a52b5af > Order by を使っているところは問題ないのですが使っていないところで > 並びが変わってしまいました。 それは仕様です。別に SQL Server に限った話では無く、ほとんどの リレーショナルデータベースにおいて、明示的な並び順を指定しなかった場合の 取得順序は不定とされています。 たとえば、格納順や Index 順に並んでいるように見えても、データの削除と再挿入・ デフラグ後のデータリカバリー作業・DB の最適化・Index の再生成などの作業を 行っていく事で、以前とは異なる並び順で取得されるというケースもあります。 あるいは、一見望んでいる並び順に見えていたとしても、実はその中の一部だけは 望んでいない並び順になっていた(しかしそれに気づいていなかった)といった ケースも存在します。 |