アプリ版:「スタンプのみでお礼する」機能のリリースについて

Oracleで元データを並び替えすることってできますか?
INSERTで挿入する順番を間違えてしまいまして。
データを引き出すときにorder by句を付けろと言われたらそれまでなんですが…。

A 回答 (2件)

以下の方法で、できると思います。


1.テーブルスペースを作成。
2.1のテーブルスペースに、全く、同じ列を持つテーブルを作成。
3.作成したテーブルに元テーブルの全データを挿入。
4.TRUNCATEで、元テーブルのデータを削除。
5.元テーブルに作成したテーブルのデータをソートしてから挿入。
6.作成したテーブルとテーブルスペースを削除。

目的や背景が不明瞭なので、実行することに意義があるかどうかは、判りません。

状況によっては、1は不要かもしれません。テーブルの中のデータの順番を気にされていることから、テーブルスペース内の資源利用についても気にする必要があるのではないかと想定しました。

行をアップデートしても並び順が変わることがあります。

テーブルに対して、行の追加、更新を行う度に処理が必要です。
    • good
    • 0
この回答へのお礼

ありがとうございます。
やはり意味のないことですね。

お礼日時:2006/06/06 14:02

ORDER指定無しの問い合わせ順は、原則として不定です。

(挿入順とは限りません)
なので、登録内容を改める意義は少ないと思いますよ。
(GROUP指定なしORDER指定なしの非パラレルSQLので、全表検索の場合には、
挿入順で問い合わせ結果が戻されるとは思いますけどね)

とりあえず、質問の回答としては、
一度データを消して、再登録という作業を行うしか、挿入順を変える術はありません。
    • good
    • 0
この回答へのお礼

わかりました。ありがとうございますm(_ _)m

お礼日時:2006/06/05 11:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す