• ベストアンサー

途中に追加

こんにちは。 いきなりですが、MySQLで no name ------------------ 1 太郎 2 花子 3 明 とあるテーブル('example')を、 no name ------------------ 1 太郎 2 花子 4 道子 3 明 というふうに、2の後に4を追加したいのですが、やり方がわかりません。 解決方法をご伝授ください。お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • root139
  • ベストアンサー率60% (488/809)
回答No.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;

参考URL:
http://www.atmarkit.co.jp/fnetwork/rensai/sql02/sql1.html
hideaki200x
質問者

お礼

お返事が大変遅くなり、申し訳ございませんでした。 ご回答いただいた方法で解決できました。 本当にありがとうございました。

関連するQ&A