ドメイン名
配点 : 20点難易度 : 2
制限実行時間 : 1000ms制限メモリ使用量 : 128 MB
SQLiteの注意点

TOPSIC SQLでは、SQLの実行環境にSQLiteを使用しています。SQLite以外のRDBMSの文法を使用することはできません。
問題を解く際に注意すべきSQLiteの制約について、以下に記載してありますのでご確認下さい。

  1. NUMERIC、INTEGER、REALは、自身のクラスへの変換が推奨されていますが、変換できなかった場合でも、そのまま格納されます。
  2. 新しくデータを追加した場合、既に格納されているデータの中で ROWID の値が最大のものを探し、それに1を加えた値が新しく追加されるデータの ROWID の値として保存されます。
  3. 外部結合は、左外部結合を行う LEFT OUTER JOIN 句のみ使用できます。
    ※2022年12月以降、LEFT / RIGHT / FULL OUTER JOIN が使用可能となりました。
  4. 指定した日付と時刻のタイムゾーンはUTCとして扱われます。
  5. 日付関数や文字列関数については、SQLiteで固有の関数があります。
  6. テーブル項目の論理名が「◯◯日」となっている場合は、日付項目の時分秒は設定されていません。論理名が「◯◯日時」となっている場合は、日付項目の時分秒まで設定されています。
    • 「受注日」の場合は「2021-01-01」
    • 「受注日時」の場合は「2021-01-01 15:15:15」

その他のSQLiteの制約については、SQLiteの公式ドキュメントをご確認ください。
また、ER図の読み方やSQLiteの関数および構文などについては、「受験ルール・用語」をご確認ください。

問題

会員テーブル(MEMBER_MST)のメールアドレス(EMAIL)より、ドメイン名をドメイン拡張子無しで抜き出して表示しなさい。ただし、メールアドレスのドメイン拡張子は、「.co.jp」のみ登録されているものとする。 また、これらの拡張子と同じ文字列がメールアドレスやドメイン名の途中に含まれることはないものとする。(「aaa.co.jp@bb.co.jpccc.co.jp」等はないものとする)

例えば、メールアドレス「aaa@bbb.co.jp」の場合、ドメイン名からドメイン拡張子「.co.jp」を省いて、「bbb」と表示する。

表示項目は以下とする。(エイリアスを使用し→の項目名とする)

  • MEMBER_CODE → MEMBER
  • EMAIL → EMAIL
  • 抜き出したドメイン名 → DOMAIN

表示順

  1. 表示項目DOMAINの降順
  2. 表示項目MEMBERの降順

表示フォーマット

※あくまでフォーマットを示すもので、正解例ではありません。行数も正解とは異なります。

MEMBER EMAIL DOMAIN
10370 IYjR3@nS2X.co.jp nS2X
10140 Mo8upZ@iloyQZ.co.jp iloyQZ
10100 cTqeC@iloyQZ.co.jp iloyQZ
10010 yamadarei@elfelyan.co.jp elfelyan
10250 yu2YOp@7MtcKU.co.jp 7MtcKU

ER図 (半角:物理名、全角:論理名)


テーブル定義

テーブル名: MEMBER_MST

主キー 列名 データ型 必須 デフォルト値
✔︎ MEMBER_CODE VARCHAR ✔︎ NULL
LAST_NAME VARCHAR ✔︎ NULL
FIRST_NAME VARCHAR ✔︎ NULL
LAST_NAME_KANA VARCHAR ✔︎ NULL
FIRST_NAME_KANA VARCHAR ✔︎ NULL
LOGIN_ID VARCHAR ✔︎ NULL
EMAIL VARCHAR ✔︎ NULL
PSW VARCHAR ✔︎ NULL
BIRTH_DATE VARCHAR ✔︎ NULL
GENDER INTEGER ✔︎ NULL
OPTOUT_TYPE INTEGER ✔︎ NULL
LOGIN_DATETIME VARCHAR NULL
LOGIN_ERROR_COUNT INTEGER NULL
LOGIN_LOCKED_FLG INTEGER NULL
LATEST_POINT_ACQUIRED_DATE VARCHAR NULL
REST_POINT INTEGER NULL
TEMPORARY_POINT INTEGER NULL
WITHDRAWAL_DATE VARCHAR NULL
UPDATE_USER_NAME VARCHAR ✔︎ NULL
USER_UPDATE_DATETIME VARCHAR CURRENT_TIMESTAMP

サンプルデータ

テーブル名: MEMBER_MST

MEMBER_CODE LAST_NAME FIRST_NAME LAST_NAME_KANA FIRST_NAME_KANA LOGIN_ID EMAIL PSW BIRTH_DATE GENDER OPTOUT_TYPE LOGIN_DATETIME LOGIN_ERROR_COUNT LOGIN_LOCKED_FLG LATEST_POINT_ACQUIRED_DATE REST_POINT TEMPORARY_POINT WITHDRAWAL_DATE UPDATE_USER_NAME USER_UPDATE_DATETIME
10010 山田 ヤマダ レイ yamadarei@elfelyan.co.jp yamadarei@elfelyan.co.jp 1001 1992-12-24 2 1 2023-07-31 11:00:00 0 0 NULL 0 98 NULL SYSTEM 2024-01-31 10:00:00
10100 金久保 安吾 カナクボ アンゴ cTqeC cTqeC@iloyQZ.co.jp 1010 1958-07-17 1 0 2023-07-31 11:00:00 3 8 NULL 91 44 NULL SYSTEM 2024-01-31 10:00:00
10140 本堂 章博 ホンドウ アキヒロ Mo8upZ@iloyQZ.co.jp Mo8upZ@iloyQZ.co.jp 1014 1961-02-19 1 0 2023-07-31 11:00:00 3 9 NULL 95 47 NULL SYSTEM 2024-01-31 10:00:00
10250 弦巻 桃奈 ツルマキ モモナ yu2YOp@7MtcKU.co.jp yu2YOp@7MtcKU.co.jp 1025 1968-06-12 2 0 2023-07-31 11:00:00 4 0 NULL 5 58 NULL SYSTEM 2024-01-31 10:00:00
10370 関井 亜門 セキイ アモン IYjR3 IYjR3@nS2X.co.jp 1037 1975-10-05 2 1 2023-07-31 11:00:00 5 1 NULL 16 68 2021-02-07 SYSTEM 2024-01-31 10:00:00

Sorry, Japanese Only.