- ベストアンサー
途中に追加
こんにちは。 いきなりですが、MySQLで no name ------------------ 1 太郎 2 花子 3 明 とあるテーブル('example')を、 no name ------------------ 1 太郎 2 花子 4 道子 3 明 というふうに、2の後に4を追加したいのですが、やり方がわかりません。 解決方法をご伝授ください。お願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
リレーショナルデータベースでは、テーブルに格納されている行(レコード)に順番はありません。SELECT文のORDER BY句などで取出す順番を指定できるだけです。 ORDER BY句を記述しないとINSERTやUPDATEした順番に取出されることが多いようですが、そのような仕様はありませんので、たまたま、その順番になっていると考えたほうが良いでしょう。 さて、レコードを決められた順番で取出したい場合は、「INTEGER UNIQUE NOT NULL」などの属性で順番を設定する項目を作ると良いでしょう。 例) --------------------------------------------------------------- no name od ------------------ 1 太郎 1 2 花子 2 3 明 4 4 道子 3 ------------------------------------------------------------------- 上記のテーブルのレコードを、od列の順番で取出すときは下記の様にすれば良いです。 SELECT * FROM example ORDER BY od;
お礼
お返事が大変遅くなり、申し訳ございませんでした。 ご回答いただいた方法で解決できました。 本当にありがとうございました。