
No.2ベストアンサー
- 回答日時:
そのテーブルにに一意な番号を割り当てた後、お好みの順番に変えたらいかがでしょうか。
create table t1 (c1 varchar(50));
insert into t1 values ("りんご"),("バナナ"),("かっぱえびせん");
上記が現状の状態と仮定します。
set @pos = 0;
create table t2 select @pos:=@pos+1 as c1,c1 as c2 from t1;
りんごとバナナの位置を入れ替えます。
update t2 set c1=2 where c2="りんご";
update t2 set c1=1 where c2="バナナ";
select * from t2 order by c1;
この後が問題なんですけど、このままテーブル名変更、c1カラムをauto incrementするようにして使ってもいいんですが、
なんとなく、select * from テーブル名; というソートなしで検索したときの順番を気にされているような気がします。
その場合、また同じように
create table t3 select c2 from t2 order by c1;
alter table t1 rename to t1_bak;
alter table t3 rename to t1;
あとは、プライマリーキーや他のインデックスがあれば、追加して、お引っ越し完了です。
No.3
- 回答日時:
>レコードの行を一つ上にあげることは可能ですか?
#2さんの回答にあるように数字( 任意の文字列でも可能ですが・・・ )をキーにして、そのキーを修正すれば可能ですが、どのフィールドでもソートすることで表示される順番を自由に変更できるので、何か勘違いしているように思えますが???
No.1
- 回答日時:
>レコードの行を一つ上にあげる
SQLにおいて、レコードの表示順列はORDER BY で処理をする以外保証されていません。
したがってレコードを上げ下げするという処理自体がSQLにはありません。
ALTER TABLE `テーブル` ORDER BY `ソートするフィールド` DESC
のような処理で、ある程度の調整はできます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
数百万件レコードのdelete
-
Access VBA Me.Requery レコー...
-
後からAUTO_INCREMENTの値を1に...
-
SQLiteで最も古いレコードのみ...
-
大きなテーブルに対する問い合...
-
sqlserverで集計結果をUPDATEし...
-
「マスタ」と「テーブル」の違...
-
ACCESSのSQLで、NULLかNULLでな...
-
ホームページがGOOGLEにインデ...
-
seoについておしえてください
-
ユニオンクエリの結果をテーブ...
-
インデックスの再構築の意味っ...
-
コンボボックスで入力したもの...
-
ACCESSのODBCリンクテーブルに...
-
SQL Serverトリガの中でDMLの種...
-
INIバグ?
-
sqlserverで同一キー単位で金額...
-
画像の赤丸で囲っている、角丸...
-
コクヨ タイトルブレーンでイ...
-
行のロックについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3つ以上のテーブルをUNIONする...
-
Accessにインポートしたら並び...
-
データの二重表示の原因
-
ACCESSのBookmarkプロパティの...
-
Access 削除クエリが重い
-
Access VBA Me.Requery レコー...
-
Access 1レコードずつcsvで出力...
-
2つの項目が重複するレコード...
-
数百万件レコードのdelete
-
SQLデータ修正時に『このレコー...
-
複数レコードをUPDATE文一文で...
-
SQLServerで同一条件レコードの...
-
Accessの重複クエリで最小以外...
-
Accessでレコードが更新された...
-
(ACCESS)並び替えをしないで...
-
テーブルのレコード削除ができ...
-
Accessで重複したデータを一件...
-
MySQL+PHP 特定レコードの更新...
-
曜日を格納する方法はどちらが...
-
ManagementStudioからのデータ削除
おすすめ情報