01. 以下のデータベース/テーブルを作成せよ。
データベース名:test_database
テーブル名:test_usertable
UserId | UserName | UserAge |
1 | 鈴木 | 21 |
2 | 佐藤 | 25 |
3 | 田中 | 18 |
4 | 山田 | 24 |
6 | 戦場ヶ原 | 17 |
02 .田中さんの歳を19歳に変更せよ。
03 .戦場ヶ原さんを削除せよ。
04. 生年月日のカラム(カラム名:Birth)を追加せよ。
05. 以下のようにbirthdayカラムを作成し生年月日を追加せよ。
鈴木:1992-12-2 佐藤:1988-3-9 田中:1995-4-27 山田:1989-9-29
06. 歳が若い順に、名前を表示せよ。
07. 生年月日が1月から6月の人の名前を表示せよ。
08. レコードの数を数えよ。
09. 登録してあるユーザの歳の平均を表示せよ。
10. ユーザ名が”山”で始まるレコードを表示せよ。
模範解答-postgres編-
# 01 (データベース/テーブルの作成/レコードの挿入) create table test_usertable(user_id integer, user_name text, user_age integer); insert into test_usertable(user_id, user_name, user_age) values(2,'佐藤',25); select * from test_username; # 02 (レコードの更新/where句) update test_usertable set user_age=19 where user_name ='田中'; # 03 (レコードの削除) delete from test_usertable where user_name = '戦場ヶ原'; # 04 (カラムの追加) alter table test_usertable add birthday date; (削除:alter table test_usertable drop birthday;) # 05 (レコードの更新/where句) update test_usertable set birthday = '1992-12-2' where user_name='鈴木'; # 06 (並び替え,ソート) select user_name from test_usertable order by user_age; (降順:select user_name from test_usertable order by user_age desc;) # 07 (where句/date_part関数) select * from test_usertable where date_part('month',birthday) >=1 and date_part('month',birthday)<=6; # 08 (count関数) select count(*) FROM test_usertable; # 09 (avg関数) select avg(user_age) from test_usertable; # 10 (like検索/パターンマッチング) select user_name from test_usertable where user_name like '山%';
コメント
[…] ★あとは、一般的なSQL操作の練習あるのみ! SQL練習問題 […]