 |
พนักงานส่วนหนึ่ง อยู่ในความดูแลของหัวหน้าแผนก A, ส่วนพนักงานอีกส่วนหนึ่ง อยู่ในความดูแลของหัวหน้าแผนก B และหากเรียกหัวหน้าแผนก A มา มันก็จะโชร์ข้อมูลของพนักงานที่อยู่ในความดูแลออกมาด้วย อยากทราบว่าควรสร้าง ดาต้าเบสยังงัยดีคะ |
|
 |
|
|
 |
 |
|
น่าจะมีตาราง employee , department , position ตัวอย่างเช่น
employee (emp_ID , emp_Name,dep_ID,pos_ID)
department(dep_ID,dep_Name)
position(pos_ID,pos_Name)
อันนี้เป็นแค่ข้อมุลคร่าวๆน่าจะตอบโจทย์นี้ได้ไม่มากก็น้อย(เพราะส่วนตัวก็ไม่ได้เก่งอะไรมาก) หากต้องการให้มีการเปลี่ยนตำแหน่งได้และมีการเก็บบันทึกตำแหน่งย้อนหลัง ก็ควรที่จะต้องมีตารางเพิ่มขึ้นมาอีก
|
 |
 |
 |
 |
Date :
2012-07-01 03:00:17 |
By :
benservice |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ถ้าเรียกหัวหน้าแผนกมา แล้วพนักงานในความดูแลจะมาได้ยังงัยคะ
ควรเขียนโค๊ตยังงัยมันถึงจะมา
แล้วถ้าอ้างถึง table employee ในส่วนของ department และ position ก็จะแสดงเป็นตัวเลขมา
เพราะเราเก็บเป็นค่า ID มา
ช่วยด้วยคะ ไม่เข้าใจจริงๆ
|
 |
 |
 |
 |
Date :
2012-07-01 07:32:44 |
By :
nik |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เก็บข้อมูลพนักงาน Employee(E_id, E_name, E_lastname, D_id*, P_id*, B_id*)
เก็บข้อมูลตำแหน่ง Position(P_id, P_name)
เก็บข้อมูลแผนก Deparyment(D_id, D_name)
เก็บข้อมูลหัวหน้า Boss(B_id, B_name)
D_id*, P_id*, B_id* เป็น ฟอร์เรนคีย์ นะครับ
ในความคิดผมนะครับ อ้างอิงจาก No.1
Select E_name, E_lastname, P_name, D_name
From Employee, Position, Deparyment
Where Employee.D_id = Deparyment.D_id
and Employee.P_id = Position.P_id
and Employee.B_id = 'รหัสหัวหน้าที่จะหา'
ลองดูนะครับ
|
ประวัติการแก้ไข 2012-07-01 10:57:36
 |
 |
 |
 |
Date :
2012-07-01 10:54:06 |
By :
Krungsri |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณคะ จะลองทำตามคำแนะนำคะ
|
ประวัติการแก้ไข 2012-07-01 11:54:58
 |
 |
 |
 |
Date :
2012-07-01 11:50:40 |
By :
nik |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|