2月5日(木)3コマ目
今日、やったこと
- [確認テスト 解説]確認テスト3
- [練習問題 解説]シーケンス
今日のホワイトボード
[確認テスト 解説]確認テスト3
正解例をあげておきます。
[はじめに]ユーザー作成、システム権限付与、作成ユーザーでDB接続
いつもどおりです。
|
| 図 ユーザー作成、システム権限付与、DB接続 |
[はじめに]会員マスタテーブル作成
これもなんてことはないかと。
|
| 図 会員マスタテーブル作成 |
問1 ポイントデータテーブル 作成
|
| 図 問1 ポイントデータテーブル 作成 |
問2 会員別獲得ポイントビュー 作成
会員でグループ化する際、同姓同名のデータがある可能性から、会員のIDでグループ化。
会員のIDと氏名は1対1なので、会員のIDを氏名の組み合わせでグループ化しても、会員のIDだけでグループ化しても同じ。
|
| 図 問2 会員別獲得ポイントビュー 作成 |
問3 プラチナ会員一覧ビュー 作成
総獲得ポイントが100以上はグループに対する条件。
|
| 図 問3 プラチナ会員一覧ビュー 作成 |
問4 非プラチナ会員一覧ビュー 作成
問3とほぼ同じ。
|
| 図 問4 非プラチナ会員一覧ビュー 作成 |
問5 日別発行ポイント一覧ビュー 作成
会員情報は含まないため、会員マスタテーブルは不要。
|
| 図 問5 日別発行ポイント一覧ビュー 作成 |
問6 会員別ポイント発行回数一覧ビュー 作成
ポイント発行回数 = ポイントデータテーブルの行数。
行数のカウントはcount()関数。
前回、くどくどと言いましたが、count()関数は、多くのケースでcount(*)でOK。
特定の列名を指定するのは、その列がnullな行はカウントしたくない時。
|
| 図 問6 会員別ポイント発行回数一覧ビュー 作成 |
[練習問題 解説]シーケンス
ポイントはデータ登録のさい、シーケンスから採番(nexval)と直近に採番した値の取得(currval)をうまく使うこと。
正解例をあげておきます。
次回は
オブジェクト権限。







