突っ走り書き

見せるほどのものでは..

MySQLの復習@6日目

あるカラムのデータをまとめて変更

# 全てのレコードを変更
update tb set [col] = [value];

# 条件に合致するレコードのみ変更
udpate tb set [col] = [value] where ...;

# ちょっとした応用
# 成績の良い10人に「成績上位者」と表示
update tb set memo = '成績上位者' where order by point desc limit 10;

MySQL起動時に --safe-updates オプションを付けると,
keyカラムに対するwhere句のない update/delete コマンドが実行できなくなる.

レコードをフィルタリングしてテーブルを複製

create table [dst] select * from [src] where...;
create table tall select * from member where height >= 180;

レコードの削除を詳しく

# テーブルの全てのレコードを削除
delete from [tab];

# ちなみにテーブルごと削除したときは
drop table [tab];

# 条件に合致するレコードだけ削除
delete from [tab] where...;

# ソートして先頭から削除とか
delete from [tab] order by [col] limit [n];
# 年上10人のレコードを削除
delete form member order by age limit 10;

忘れてたこと <2013-08-11 日>

テーブルにカラムを追加する
alter table [tab] add [col] [dtype];
alter table member add birthday DATE;
テーブルからカラムを削除する
alter table [tab] drop [col];
alter table member drop [birthday];