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

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

新規登録して質問してみよう
ただいま回答率
86.02%
SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

Q&A

解決済

SQL Serverで列ごとに一番古い日付を取得したい。

退会済みユーザー

退会済みユーザー

総合スコア0

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

2回答

0グッド

0クリップ

2155閲覧

投稿2022/01/14 14:25

前提・実現したいこと

社員テーブル.部署コード単位で入社日が一番古い社員の部署名、入社日を表示したいですが
上手くいきません。

社員テーブル
ーーーーーーーーー
部署cd  入社日
001  2000/01/01
001  2000/02/02
002  2002/01/01
002  2002/02/01
003  2004/02/03
ーーーーーーーーー  

部署テーブル
ーーーーーーーーー
部署cd  部署名
001    営業
002    経理
003    広報
ーーーーーーーーー

このような結果を出すにはどうすればよいでしょうか。
ーーーーーーーーー
部署名  入社日 
営業   2000/01/01
経理   2002/01/01
広報   2004/02/03
ーーーーーーーーー

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

エラーなく実行できるが思うようにいかない。

select 部署名, min(NyushaDate) as '入社日'  from 社員テーブル as t1 left join 部署テーブルas t2 on 社員テーブル.部署cd = 部署テーブル.部署cd group by 部署名;

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

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

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

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

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

下記のような質問は推奨されていません。

  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答2

0

SQL

1select t1.部署名, t2.入社日 2from 部署テーブル as t1 3 left join ( 4 select 部署CD, min(入社日) 入社日 5 from 社員テーブル 6 group by 部署CD 7 ) t2 8 on t1.部署CD=t2.部署CD

投稿2022/01/14 18:09

sazi

総合スコア24639

下記のような回答は推奨されていません。

  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

0

ベストアンサー

こんな感じでどうでしょう?

sql

1SELECT 2 T2.部署名, 3 MIN(入社日) AS 入社日 4FROM 5 社員テーブル T1 6LEFT JOIN 7 部署テーブル T2 8ON 9 T1.部署cd = T2.部署cd 10GROUP BY 11 T2.部署名

投稿2022/01/14 15:56

cx20

総合スコア4551

下記のような回答は推奨されていません。

  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

退会済みユーザー

退会済みユーザー

2022/01/15 12:55

出来ました! ありがとうございました!

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

ただいまの回答率
86.02%

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

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

質問する

関連した質問

同じタグがついた質問を見る

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。