• ベストアンサー

MYSQL について

テーブルにレコードを挿入(INSERT)するときに、「何行目に挿入する」とか、 「テーブルの最初に挿入する」とかって指定できますか? もしくは、SELECT するときに、逆順に表示することは出来ますか? できるなら、そのコマンド命令を教えてください。

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

  • ベストアンサー
  • masabou7
  • ベストアンサー率18% (2/11)
回答No.2

myrimyriさん こんにちは。 ORDER BY xxx DESC を使えば逆順になりますよ。 xxxはソートをかけたいフィールド名です。 例 SELECT * FROM table_test ORDER BY name DESC;

その他の回答 (2)

noname#25358
noname#25358
回答No.3

 補足です。  SQLには、「何行目」という概念はありません。  たとえるなら、「レコード」という名の積み木を乱雑に箱の中に入れるのが INSERT です。  整理は出すときに行うわけです。

myrimyri
質問者

お礼

deagleさん、 ありがとうございました! 早速やってみます。

回答No.1

SELECT に関してですが SELECT * FROM テーブル名 ORDER BY 列名 DESC これでどうでしょうか INSERTはよく分かりませんが SELECT の時にソートをすればいいんじゃないですか

myrimyri
質問者

お礼

はい、ご回答ありがとうございました。 DESCを使うのは知ってたんですが、コマンドのどこに入れればいいのか わからなかったです(^^;;; 

関連するQ&A

  • ACCESS SQLのINSERTについて

    TBLというテーブルにINSERT文を使用して1行レコードを追加したいです。TBLテーブルのカラムAにはシステム日付を、カラムBには別テーブルのselect count(*)の実行結果を挿入したいのですがうまくいきません。何か良い方法はございませんでしょうか? INSERT INTO カウンタ統計 ( [DATE], USER_COUNT ) VALUES (date(), (SELECT COUNT(*) FROM hiplus_HW_USER)); ※日付は問題なく挿入できるのですがSELECT文の結果が挿入できない状況です。宜しくお願いします.

  • デフォルトでデータが表示される順番

    質問があります。 oracle初心者です。 oracle8.1で insert文によってデータを登録すると 一番最後のレコードに表示されません。 select文(select * from "テーブル名")を 書いて全レコードを抽出すると、中途半端な位置に 最新レコードが表示されます。 デフォルトでテーブルのデータが表示される位置に 決まりというのはあるのでしょうか MYSQLでは最後の行に最新レコードが表示されるはずですが、 オラクルでは違うのでしょうか。 もちろん、文字コード順や数値の順番ではないみたいです。 困っていますご回答よろしくお願いします。

  • mysql のテーブルロックについて

    Mysqlにてテーブルをロックしようとして以下2つの方法を試し疑問に思ったので質問します。 1.select for update によるテーブルロック 以下のselect for update(where句にレコードを一意に特定できない条件を指定) をコマンドライン で実行。 select * from test where test_state=0 for update; 別に起動したコマンドラインから下記アップデート文を実行したところ ロックされることが確認できました。 update test set test_official=0 where test_id = 1; しかし、最初に実行した select for update 文を下記のようにしたところ上記update文はロックされず に実行されてしまいました。 select * from test where test_state is null for update; これはなぜでしょうか。

    • ベストアンサー
    • MySQL
  • バルクINSERT直後に、最後のIncremet値は取得できますか?

    PHPからMySQLへトランザクションを使わずに、 INSERT INTO test (id,count) VALUES (5,5),(6,6) のようにINSERTした直後に、SELECT LAST_INSERT_ID(); としても、5が返却されてしまいます。 これはMySQLの仕様でしょうか? 又、 SELECT LAST_INSERT_ID() ではなく、 SELECT LAST_INSERT_ID() FROM test; のようにテーブル名を指定する方法は何か意味があるのでしょうか? テーブル名を指定すると、テーブルにあるレコード数分 データが返却されてしまいました。。

    • ベストアンサー
    • MySQL
  • MySQLで先頭にinsertしたい

    現在、MySQLでselectを行うと、追加した順序で表示が行われています。 そこで、新たにレコードを先頭にinsertしたいと思うのですが、可能でしょうか? 本来はorder byなどでソートすべきで、邪道であることは承知ですが、 もし可能な方法があれば教えていただきたいです。 よろしくお願いします。

  • 自動で生成されるユニークID

    postgreSQL8のwindows版を使っています。 テーブルにレコードを追加するとpostgresが自動で生成するユニークIDがあったかと思います。 insert後に出てくる insert ○○○○○という数字です。 これは普段selectで表示されませんが、このIDを表示させる方法、 ならびにこのIDを使ってそのレコードを削除する方法を教えてください。

  • MYSQL5.0.45のバグでしょうか?

    MYSQLバージョン5.0.45で下記の事を行いました。 OSはWin、LINUX共に発生しました。 1.MYSQLをデフォルトのAUTOCOMMIT機能が使用されている状態で起動する。 2.クライアントを2つ立ち上げる(A、Bとする) 3.Aでset autocommit = false;とAUTOCOMMIT機能を解除する。 4.Bで正しくinsertでレコードを挿入する。 5.Aで4で挿入したレコードをselectで取得する。 すると、5で取得することができません。 空コミットなどを行うと取得できるようですが。。。 これはバグでしょうか?仕様でしょうか? ちなみに4.0.XX(バージョン忘れてしまいました申し訳ないです)では取得できました。 宜しくお願い致します。

    • ベストアンサー
    • MySQL
  • 【マクロ】任意の行の下へ行の挿入&選択

    セルA3:DS750の表があります。 1行=1顧客として使用していますが、度々表に行を挿入して顧客を追加しています。 その為、以下のマクロを作ってみたのですが、最後に【挿入した行をActiveにする】事ができません。 ★挿入位置は、都度変わります。 ★一度に行う挿入行数は1行(多くても3行)の為、マクロは1行追加で作成しています。(行数の指定までは力量により出来ませんでした・・) ★1行目にサンプルを(非表示で)置いて、それを任意の行へ挿入させています。 1行目のサンプルを非表示のまま貼り付けると、挿入した行も非表示になってしまったので、一度再表示させてから処理させています。 サンプル行には、条件書式、数式などがところどころ入っています。 処理の最後に【'行を指定して挿入】と同じ行をActiveにする方法が知りたいです。 記録マクロをいじっただけなので見づらいと思いますが、よろしくお願い致します。 -------------------------------- Sub 挿入() '1行目を再表示 Rows("1:1").Select Selection.EntireRow.Hidden = False '1行目をcopy Rows("1:1").Select Selection.Copy '行を指定して挿入 InsertRow = InputBox("何行目の下に挿入しますか?") + 1 Cells(InsertRow, 1).Insert Shift:=xlDown '1行目を非表示 Rows("1:1").Select Selection.EntireRow.Hidden = True '挿入した行をactiveにする ・・・ end Sub -------------------------------- マクロが根本的におかしかったらすみません。。 アプローチ方法が他にある場合にもご指摘いただけると助かります。

  • SQLPLUSでセレクト結果の表示方法

    お世話になります。 SQLPLUSでselect * from AAA という風にセレクト結果を出力する場合 AAAテーブルのカラム数が多い場合改行されて出てきますが、 これを改行せずに1レコード1行で表示させられないでしょうか? 何かSQLPLUSのコマンド等をご存知の方いらっしゃったらご教授お願いいたします。

  • XAMPPのMySQLで削除済みレコードが表示される

    XAMPPのMySQLで削除済みレコードが表示される XAMPP1.7.3をWinXP Proにて運用しています。 PHPにてselectのSQLを実行したところ、削除済みのレコードが表示されるため困っています。 これまでの経緯は 1.phpMyAdminにてDBとテーブルを作成し、サンプルデータを4件登録 2.PHPからselectで条件なしで全レコードが表示されるのを確認 3.条件をつけてselectし、それぞれの条件にマッチしたレコードが表示されるのを確認 4.phpMyAdminにて1レコードを削除 5.条件をつけてselectし、削除したレコードが表示されるのを発見 6.phpMyAdminのSQLで同じ条件のSQLを実行し、削除レコードが表示されないのを確認 7.PHP側のselect後にDBCloseをしているかの確認 8.phpMyAdminにてテーブルの修復、最適化などを実行 9.MySQLの再起動 以上の操作をしてみましたが、やはりPHPからのSQLの結果に削除されたレコードが表示されてしまいます。 色々なサイトで同じような現象のTipsがないか探しましたが、見つけきれず質問させていただきます。 同じような現象に対しての対応を紹介したサイトや、対処方法をご教授下さい。 よろしくお願いします。