質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Q&A

1回答

605閲覧

都道府県テーブルと人テーブルから出身者がもっとも多い県出身の人のみを検索する

退会済みユーザー

退会済みユーザー

総合スコア0

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

0グッド

3クリップ

投稿2020/05/10 10:28

前提・実現したいこと

都道府県テーブル(PREFECTURE)
+--------+----------+------------+
| PREFCD|PREFNAME| REGION   |
+--------+----------+------------+
| 01     | 北海道   | 北海道地方 |
| 02     | 青森県   | 東北地方   |
| 03     | 秋田県   | 東北地方   |
| 04     | 岩手県   | 東北地方   |
| 05     | 宮城県   | 東北地方   |
| 06     | 山形県   | 東北地方   |
| 07     | 福島県   | 東北地方   |
| 08     | 茨城県   | 関東地方   |
| 09     | 群馬県   | 関東地方   |
| 10     | 栃木県   | 関東地方   |
| 11     | 埼玉県   | 関東地方   |
| 12     | 東京都   | 関東地方   |
| 13     | 千葉県   | 関東地方   |
| 14     | 神奈川県 | 関東地方   |
| 15     | 山梨県   | 中部地方   |
| 16     | 長野県   | 中部地方   |
| 17     | 新潟県   | 中部地方   |
| 18     | 福井県   | 中部地方   |
| 19     | 富山県   | 中部地方   |
| 20     | 石川県   | 中部地方   |
| 21     | 静岡県   | 中部地方   |
| 22     | 岐阜県   | 中部地方   |
| 23     | 愛知県   | 中部地方   |
| 24     | 三重県   | 近畿地方   |
| 25     | 滋賀県   | 近畿地方   |
| 26     | 京都府   | 近畿地方   |
| 27     | 大阪府   | 近畿地方   |
| 28     | 兵庫県   | 近畿地方   |
| 29     | 奈良県   | 近畿地方   |
| 30     | 和歌山県 | 近畿地方   |
| 31     | 鳥取県   | 中国地方   |
| 32     | 島根県   | 中国地方   |
| 33     | 岡山県   | 中国地方   |
| 34     | 広島県   | 中国地方   |
| 35     | 山口県   | 中国地方   |
| 36     | 香川県   | 四国地方   |
| 37     | 愛媛県   | 四国地方   |
| 38     | 徳島県   | 四国地方   |
| 39     | 高知県   | 四国地方   |
| 40     | 福岡県   | 九州地方   |
| 41     | 佐賀県   | 九州地方   |
| 42     | 長崎県   | 九州地方   |
| 43     | 大分県   | 九州地方   |
| 44     | 熊本県   | 九州地方   |
| 45     | 宮崎県   | 九州地方   |
| 46     | 鹿児島県 | 九州地方   |
| 47     | 沖縄県   | 九州地方   |
| 99     | 海外     |  海外       |
+--------+----------+------------+

人テーブル(EMPLOYEE) (EMPLOYEE.BIRTHPLACE = PREFECTURE.PREFCD)
+---------+--------------+------------+
| EMPNO | EMPNAME  |BIRTHPLACE|
+---------+--------------+------------+
| 0299801 | 足立一典     | 02         |
| 0399902 | 荒川静香     | 05         |
| 0500105 | 板橋壮介     | 47         |
| 0500108 | 江戸川智     | 01         |
| 0700312 | 大田由希     | 26         |
| 0700318 | 葛飾北斎     | 28         |
| 0800405 | 江東拓也     | 40         |
| 0800408 | 北さやか     | 05         |
| 1000612 | 品川早紀     | 12         |
| 1000620 | 渋谷健一     | 31         |
| 1000632 | 新宿太郎     | 30         |
| 1100718 | 田中太郎  | 99         |
| 1401017 | 墨田智樹     | 41         |
| 1401023 | 世田谷豪太郎| 27         |
| 1501171 | 台東郁夫     | 41         |
| 1501179 | 中央義勝     | 33         |
| 1601203 | 千代田勝     | 39         |
| 1701365 | 豊島哲也     | 12 |
| 1801451 | 中野ゆかり | 23         |
| 2001630 | 練馬陽子     | 22         |
| 2001660 | 文京任三郎   | 07         |
| 2101799 | 港さとる     | 99         |
| 2201840 | 佐藤けんじ   | 99         |
+---------+--------------+------------+

都道府県テーブルと人テーブルから出身者がもっとも多い県出身の人のみを検索し、以下の実行結果となるクエリを作成したい
+---------+--------------+----------+
| EMPNO | EMPNAME  |PREFNAME|
+---------+--------------+----------+
| 1100718 | 田中太郎     |  海外      |
| 2101799 | 港さとる     |  海外      |
| 2201840 | 佐藤けんじ | 海外     |
+---------+--------------+----------+

発生している問題・エラーメッセージ

自分なりに色々と頑張って書いてみましたが、エラーが発生しうまく書くことが出来ません…

該当のソースコード

ソースコード

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/05/10 11:11

”自分なりに色々と頑張って書いてみ”たことを記載してください。 何も書いてないと何も伝わらないので、何もやっていないのと同じになります。
guest

回答1

0

質問者がどのくらいの実力かわかりませんが指針を書いておきます。
以下の順番に考えてみましょう。

  1. まずはemployeeテーブルよりbirthcodeごとの件数を集計します。
  2. 次にその結果から件数の最大値を取得します。
  3. 取得した最大値と一致するbirthcodeを1番目の結果から抽出します。
  4. 3番目の結果とemployeeテーブルをjoinすれば目的の結果が出ます。

上記の処理をwith句を使って順番に書けば1アクションで結果が返ってくるクエリが書けます。
上から順に考えていき、躓いたら書いてみたクエリとエラーメッセージを質問文に追記していけば回答がつきやすいのではと思います。
Good Luck!

投稿2020/05/11 13:02

hope_mucci

総合スコア4447

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問