 |
|
คำสั่ง SQL การ Select มากกว่า 1 ตาราง ครับ คือในหน้าหนึ่งเนี่ยผมต้องการ Select ออกมามากกว่า 1 ตารางผมใช้แบบนี้นะครับ |
|
 |
|
|
 |
 |
|
คุณต้องเพิ่ม ME_Emp.PROVINCE_NAME ถึงจะได้ ชื่อออกมาครับ
ไม่รู้เข้าใจตรงกันหรือป่าวนะครับ
|
 |
 |
 |
 |
Date :
2010-11-12 10:46:00 |
By :
kanchen |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ใช้ Alias AS เพื่อเปลี่ยนชื่อค่ะ
เช่น
SELECT A.ConfuseName As AName ,B.ConfuseName As BName , ... ,Z.ConfuseName As ZName
FROM ....
ผลลัพธ์จะได้ชื่อ field ใหม่ตามที่กำหนด คือ ANAME ,BNAME ,...
|
 |
 |
 |
 |
Date :
2010-11-12 11:45:17 |
By :
blurEyes |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ME_Emp.PROVINCE_NAME
ME_Emp มันไม่มีฟิลด์ PROVINCE_NAME นะครับ มีแค่ ID ที่เป็น FK กับ province ครับ
คือผมต้องการ province.PROVINCE_NAME << ของ Job_Post
กับ province.PROVINCE << ของ ME_Emp น่ะครับ
เดี๋ยวลองใช้วีธีของคุณ Stupid girl ดูก่อนนะ ครับ
|
 |
 |
 |
 |
Date :
2010-11-12 12:39:22 |
By :
13crowns |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (C#)
SELECT Job_Post.province_id
,jobProvince.PROVINCE_NAME As JobProvinceName
,EmpProvince.PROVINCE_NAME As EmpProvinceName
FROM Job_Post
LEFT JOIN province AS JobProvince
ON Job_Post.Province_ID = jobProvince.Province_ID
//ขาด RELATION ระหว่าง Job_Pos กับ ME_EMP ซึ่งควรจะมี คุณไปใส่มาเอาละกันนะคะ
LEFT JOIN province AS EmpProvince
ON ME_Emp.Province_ID = EmpProvince.Province_ID
WHERE (Job_Post.ActiveAccept = 'Y')
|
 |
 |
 |
 |
Date :
2010-11-12 14:03:38 |
By :
blurEyes |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลองแล้วทำไมไม่ออกหว่า น่าจะเป็นเพราะ เงื่อนไข เลยทำให้ไม่เจอเลยสัก Record ทำยังไงดีล่ะทีนี้
SELECT
province.PROVINCE_NAME As Provincejob,province.PROVINCE_NAME As Provinceemp
FROM Job_Post,province,ME_Emp
WHERE
(ME_Emp.ME_CompanyProvince = province.PROVINCE_ID) and (Job_Post.Area = province.PROVINCE_ID)
|
 |
 |
 |
 |
Date :
2010-11-12 14:08:35 |
By :
13crowns |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เมื่อ province ของ job_post กับ me_emp เป็นคนละค่าแต่คนเอา join แบบ cross มันก้อไม่ออกมาสักแถวหรอกค่ะ
ลองดูที่ post no 4 ค่ะ guide ไว้ให้แล้ว
|
 |
 |
 |
 |
Date :
2010-11-12 14:20:16 |
By :
blurEyes |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณมากครับ ผมยังไม่เข้าใจหลักการ LEFT JOIN เท่าไหร่แฮะ
ลองอันนี้มันขึ้นว่า The multi-part identifier "Job_Post.Area" could not be bound.
SELECT Job_Post.*,jobProvince.PROVINCE_NAME As JobProvinceName,province.PROVINCE_NAME,
EmpProvince.PROVINCE_NAME As EmpProvinceName FROM Job_Post,province,
ME_Emp
LEFT JOIN province AS JobProvince ON Job_Post.Area = jobProvince.Province_ID
LEFT JOIN province AS EmpProvince ON ME_Emp.ME_CompanyProvince = EmpProvince.Province_ID
WHERE (Job_Post.ActiveAccept = 'Y') AND (Job_Post.Area = province.PROVINCE_ID) AND (Job_Post.ID_Job = 21 ) AND (Job_Post.ME_ID = ME_Emp.ME_ID)
ผมต้องใส่ Relation ยังไงครับ Relation ระหว่าง ME_Emp กับ Job_Post คือ Job_Post.ME_ID เป็น FK กับ PK ของ ME_Emp คือ ME_Emp.ME_ID
ต้องการชื่อจังหวัดที่อยู่ที่ province.PROVINCE_NAME มี PK เป็น province.PROVINCE_ID
โดย Job_Post.Area เอาไว้เก็บ PROVINCE_ID
และ ME_Emp.CompanyProvince เอาไว้เก็บ PROVINCE_ID เหมือนกัน
แล้วก็อยากจะให้โชว์ provincename ของ Jobpost กับของ ME_emp ออกมาพร้อมกัน อย่างที่พี่ Stupid gurl เข้าใจถูกแล้ว
|
ประวัติการแก้ไข 2010-11-12 15:05:06
 |
 |
 |
 |
Date :
2010-11-12 15:00:51 |
By :
13crowns |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (C#)
SELECT Job_Post.* , Job_Post.Area ,ME_Emp.CompanyProvince
,jobProvince.PROVINCE_NAME As JobProvinceName
,EmpProvince.PROVINCE_NAME As EmpProvinceName
FROM Job_Post
LEFT JOIN province AS JobProvince
ON Job_Post.Area = jobProvince.Province_ID
LEFT JOIN ME_Emp
ON Job_Post.ME_ID = ME_Emp.ME_ID
LEFT JOIN province AS EmpProvince
ON ME_Emp.CompanyProvince = EmpProvince.Province_ID
WHERE (Job_Post.ActiveAccept = 'Y')
trick ของ statement นี้มีว่า ในเมื่อ me_emp.province_id และ job_post.province_id
เป็นคนละค่ากันดังนั้น table province ที่มาเชื่อมกันก้ควรเป็นคนละตัวแต่มีค่าเหมือนกัน ^^
โดยการทำให้เป็น JobProvince และ EmpProvince ค่ะ
อีกอย่าง sql statement แบบยาวๆนี่ ถ้าเขียนให้เป็นส่วนๆ ไม่ติดกันเป็นพืด
จะช่วยให้คุณมองและทำความเข้าใจได้ง่ายขึ้นค่ะ
|
ประวัติการแก้ไข 2010-11-13 05:58:51
 |
 |
 |
 |
Date :
2010-11-13 05:44:14 |
By :
blurEyes |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ครับผม ขอบคุณมากครับพี่
|
 |
 |
 |
 |
Date :
2010-11-13 07:50:43 |
By :
13crowns |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|