作者inpin (刀)
看板Visual_Basic
標題[SQL ] 新手發問~關於兩個表的關係
時間Sun Jul 17 23:30:42 2011
※ [本文轉錄自 Database 看板 #1E8S_6W7 ]
作者: inpin (刀) 看板: Database
標題: [SQL ] 新手發問~關於兩個表的關係
時間: Sun Jul 17 01:52:02 2011
小弟是SQL的新手
使用SQL2005
目前在練習一個關於上班打卡的程式(VB6.0)
現在遇到一個瓶頸
就是我有兩個表
一個是關於員工的基本資料
一個是每天刷卡的紀錄
欄位設計大概是這樣的
Table員工emp
部門Depart、職位Post、身分字號ID、卡號CardNo、
生日Birth、地址Address、電話TEL、車號Car、照片Pic 、常日班人員Normal(屬性為bit)
Table紀錄reco
部門Depart、職位Post、卡號CardNo、時間Time、日期Date
我在datagrid建立一個查詢
程式碼部分是沒問題 會驗證人員是否為常日班人員然後寫入資料庫
現在問題是 我要在我的Datagrid中
除了要顯示當天的刷卡紀錄之外,還要加入表emp中的常日班人員Normal欄位
因為我程式的寫法是點查詢按鈕後 系統會針對輸入的日期去顯示資料
不過Datagrid中我雖然select兩個表
但是顯示出來的常日班人員這個欄位好像有問題
會顯示 -1...
我希望可以看到紀錄 並且知道這個人是否是常日班人員
應該是select寫法出問題或者資料庫設計方面沒設好
請問有無大大可以指導一下小弟~~多謝囉@@
--
卡樂B
波浪創新意~~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.203.8.168
--
卡樂B
波浪創新意~~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.167.196.135
1F:→ MOONRAKER:SELECT * FROM reco AS R LEFT JOIN emp AS E 07/18 02:06
2F:→ MOONRAKER: ON R.CardNo = E.CardNo 總之去找join的部份來看 07/18 02:06
3F:→ inpin:嗯...試過了可是會怪怪的 同一個人常日班會出現0跟1都有... 07/18 20:38
4F:→ MOONRAKER:不會吧 卡號不唯一嗎?你要從一個表的記錄順便帶出 07/18 23:39
5F:→ MOONRAKER:另個表的相關記錄 join是最簡單有效的方法 07/18 23:39
6F:→ MOONRAKER:研究一下join應該可以寫出正確沒問題的query 07/18 23:40
7F:→ inpin:恩恩...我再研究看~可能當初設計有問題XD 謝謝唷 07/22 23:04
8F:→ MOONRAKER:那就慘了 XD 你用SQL 2005 應該可以在他的management 07/23 00:47
9F:→ MOONRAKER:studio裡面揣摩一下怎麼寫 那可以馬上看到結果 07/23 00:47
10F:→ MOONRAKER:沒問題再寫進程式裡 07/23 00:48