プロが教えるわが家の防犯対策術!

SQL初心者なのでお教えください。
テーブルAに部課名,社員NO,入室時刻,退室時刻のデータがあり部課名単位でセレクトした結果を
社員NO単位で処理したいのですが、一般的にはどのような手順(SQL)でするのでしょうか。

テーブルA
|部課名|社員NO|    入室時刻 |  退室時刻 |
|A |11111 |2006/01/01 8:10:00| 2006/01/01 9:10:00|
|A |11114 |2006/01/01 8:15:00| 2006/01/01 9:15:00|
|A |11112 |2006/01/01 8:30:00| 2006/01/01 9:30:00|
|A |11112 |2006/01/01 8:50:00| 2006/01/01 9:50:00|
|A |11111 |2006/01/01 10:10:00| 2006/01/01 12:10:00|
|A |11113 |2006/01/01 6:10:00| 2006/01/01 7:10:00|
|A |11111 |2006/01/01 13:10:00| 2006/01/01 14:10:00|

社員NO 11111さんのみの結果を作りたい(特定期間に何回入室したか等)


使用OS Windows 2000,VisualBasic 2005

A 回答 (4件)

s_husky です。



回数は、

SELECT Count(*) FROM TABLE1 WHERE 部課名='a' AND 社員NO=1
AND 入室時刻 BETWEEN '2006/01/01 0:00:00' AND '2006/01/01 23:59:59';

|(expession)|
---|------------
  1| 1|
    • good
    • 0

質より量の回答!



Select * from Table1;

>>>>>|ID|部課名|社員NO_|_入室時刻      |退室時刻      |
-----|-------------------------------------------------------------
  1| 1|A  |   1|2006/01/01 8:00:00 |2006/01/01 9:00:00_|
  2| 2|B  |   1|2006/01/01 10:00:00_|2006/01/01 12:00:00|
  3| 3|C  |   2|2006/01/03 8:00:00 |2006/01/03 9:00:00_|
  4| 4|A  |   1|2006/01/03 9:00:00 |2006/01/03 10:00:00|

SELECT * FROM TABLE1 WHERE 部課名='a' AND 社員NO=1;

>>>>>|ID|部課名|社員NO_|_入室時刻      |退室時刻      |
-----|-------------------------------------------------------------
  1| 1|A  |   1|2006/01/01 8:00:00 |2006/01/01 9:00:00_|
  2| 2|B  |   1|2006/01/01 10:00:00_|2006/01/01 12:00:00|

SELECT * FROM TABLE1 WHERE 部課名='a' AND 社員NO=1
AND 入室時刻 BETWEEN '2006/01/01 0:00:00' AND '2006/01/01 23:59:59';

>>>>>|ID|部課名|社員NO_|_入室時刻      |退室時刻      |
-----|-------------------------------------------------------------
  1| 1|A  |   1|2006/01/01 8:00:00 |2006/01/01 9:00:00_|
    • good
    • 0

SQLで答えを書いてみます。


SELECT COUNT(*) FROM テーブルA
WHERE テーブルA.社員NO = 11111 ←このデータ型が文字列の時は'で囲む
AND テーブルA.入室時刻 <= 特定の期間 ← この特定の期間はタイムスタンプ型で比較してください
AND テーブルA.体質時刻 >= 特定の期間
これを流せば回数は出てくると思いますが。
    • good
    • 0

言われている意味がよくわかりません



SELECT * FROM テーブルA WHERE 社員NO='11111'

とかではないんですよね?

この回答への補足

文章力がなく説明不足でした。
まず社員NOのマスターテーブルがないので
社員NOにはなにがくるか現状ではわかりません。
社員NOテーブルを作るとかしないといけないでしょうか。

補足日時:2006/07/21 11:31
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!