C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: SQL文


(過去ログ 75 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■44581 / inTopicNo.1)  SQL文
  
□投稿者/ 陽子 (19回)-(2009/12/13(Sun) 03:10:22)

分類:[.NET 全般] 

すいません。
連続ですがもう1つ教えてください。

[勤務DB]

社員コード  勤務日  出勤コード
1       12/1   1
2       12/2   1
3       12/1   4
4       12/2   1
5       12/5   3

とデータがあった場合、勤務日が最大の社員コードと出勤コードを取ることってできますでしょうか?
select 社員コード,出勤コード from [勤務DB] where …
どのように書いたらいいんでしょう…困ってます。
よろしくお願いします
引用返信 編集キー/
■44582 / inTopicNo.2)  Re[1]: SQL文
□投稿者/ 陽子 (20回)-(2009/12/13(Sun) 03:14:51)
すいません付けたしです。

社員コード  勤務日  出勤コード
1       12/1   1
2       12/2   1
3       12/1   4
4       12/2   1
5       12/5   3
1 12/10 1
3 12/10 1
2 12/10 1
4 12/11 2
5 12/20 4

で結果、
1 12/10 1
3 12/10 1
2 12/10 1
4 12/11 2
5 12/20 4

を取得したいです。
引用返信 編集キー/
■44584 / inTopicNo.3)  Re[2]: SQL文
□投稿者/ 陽子 (21回)-(2009/12/13(Sun) 03:59:18)
付けたし
色々調べてみて、上記のトラブルは解決したのですが、最終目的は
勤務日が12/31以前の最大の社員コードと出勤コードを出す為に以下の様にしてみたのですが、だめでした…。
"select 社員コード,勤務コード" _
& " from " _
& "[勤務表DB]" _
& " where " _
& "勤務日>'12/31' and " _
& "exists(select MAX(勤務日) from [勤務表DB]')"

どこが間違ってるんでしょう…
引用返信 編集キー/
■44587 / inTopicNo.4)  Re[2]: SQL文
□投稿者/ gtk2k (130回)-(2009/12/13(Sun) 04:26:36)
SELECT
  t1.*
FROM
  勤務DB t1,
  (SELECT 社員コード, MAX(勤務日) AS 勤務日 FROM 勤務DB GROUP BY 社員コード) t2
WHERE
  t1.社員コード = t2.社員コード 
  AND 
  t1.勤務日 = t2.[勤務日

こんな感じでいけると思うが

引用返信 編集キー/
■44592 / inTopicNo.5)  Re[3]: SQL文
□投稿者/ 陽子 (23回)-(2009/12/13(Sun) 14:50:02)
できました ありがとうございます。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -