ねっとぱんだ-プログラミング勉強ブログ-

Webデザイン、プログラミングの勉強ブログ。

【MySQL】レコードの操作と検索

レコードの操作

複数行挿入できる

insert into users (name,email,password,score,memo,created) values ('suzuki','suzuki@suzu.net','pass',3.2,'memo','2017-06-09 13:22'),
('tanaka','tanaka@mail.com','blue',7.6,'2014-3-02 10:12:22');

挿入したレコードの確認

select * from users;

レコードの変更

update users set フィールド名 = 変更する値 where id = 1;(idが1のとき)

レコードの排除

delete from users where id = 2;

入力した値が入る。この場合、sexにはデフォルト値のmaleが入っている。

レコードの検索

レコードを限定して検索

select name,email from users;

縦に表示できる。レコードが多い時に使える

select * FROM users \G

<=や>=や=なども使える

select * from users where score >= 5.0;

否定は!=と<>

select * from users where score <> 5.0;

日付に対しても使える

select * from users where created <= '2010-03-03 10:10:10';
201033101010秒より前の日付であれば保湯時

曖昧検索

like
曖昧な条件で検索できる
%a
末尾がaの場合
a%
先頭がaの場合
%a%
どこかにaが入っている場合
_
任意の一文字「__」なら二文字
select * from users where email like '%jp';
select * from users where email like '%mail___';
mailの後ろに3文字続くものを検索

範囲を指定して検索

between
範囲をしていする
in
指定した値どれかに当てはまるもの
select * from users where score between 2.0 and 7.0;
scoreの値が2.0から7.0のもの。
select * from users where team in('blue','yellow');
teamがblueかyellowのもの。
||
**組み合わせて検索
ANDやORで組み合わせることができる
>|sql|
select * from users where score >= 5 and team = 'red';
scoreが5以上でteamがred

並べ替え

order
昇順に並べ替え
order by 1でフィールド1を元に昇順で並び替える
desc
降順に並べ替え

アルファベットならアルファベット順になる。
日付なら日付順。

select * from  users order by id;
select * from  users order by id desc;

表示件数を限定する

limit

select * from users limit 3;

リストの範囲を指定できる

select * from users limit 3,3;
リストは0から数えるので4番目から3列表示される。