Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > สอบถามเรื่อง Join ฟิล์ตารางครับ โดยมีเงื่อนไขว่าตารางที่ 2 จะมี 2 ฟิลล์ที่เป็น FK ของตารางที่ 1



 

สอบถามเรื่อง Join ฟิล์ตารางครับ โดยมีเงื่อนไขว่าตารางที่ 2 จะมี 2 ฟิลล์ที่เป็น FK ของตารางที่ 1

 



Topic : 117548



โพสกระทู้ ( 178 )
บทความ ( 0 )



สถานะออฟไลน์




ผมต้องการ Join ตาราง 2 ตารางเข้าด้วยกัน โดยมีเงื่อนไขคือ
1. ตารางที่ 2 จะมี 2 ฟิลล์ที่เป็น FK ของตารางที่ 1

Data base
ตารางที่ 1 ชื่อ teacher
ตารางที่ 1

ตารางที่ 2 ชื่อ work
ตาราง 2

โดยรูปแบบการเชื่อมต่อดังนี้ครับ
การเชื่้อมต่อ

โดยผมมีโค้ดคือ
Code (PHP)
SELECT
teacher.teacher_id,
teacher.teacher_name,
work.work_id,
work.work_Teacher_1,
work.work_Teacher_2,
work.work_day
FROM
teacher
Inner Join work ON work.work_Teacher_1 = teacher.teacher_id AND work.work_Teacher_2 = teacher.teacher_id


เวลาดูผลลัพธ์แล้วข้อมูลไม่ขึ้นครับ

ขอมูลที่ผมต้องการให้แสดงคือ
work day 1 มีอาจารย์ 2 ท่านทำงานคือใครบ้าง ครับ

ขอบคุณครับ



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-07-03 16:24:04 By : keng_ds View : 688 Reply : 7
 

 

No. 1

Guest


ไม่รู้ถูกหรือเปล่านะครับ ลองรันดู

Code (SQL)
SELECT work.work_id, work.work_Teacher_1, teacher_1.teacher_name AS teacher_1_name, work.work_Teacher_2, teacher_2.teacher_name AS teacher_2_name, work.work_day
FROM work JOIN teacher AS teacher_1 ON work.work_Teacher_1 = teacher_1.teacher_id 
JOIN teacher AS teacher_2 ON work.work_Teacher_2 = teacher_2.teacher_id







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-07-03 16:43:21 By : WiTT
 


 

No. 2



โพสกระทู้ ( 3,155 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


Quote:
แนะนำให้เปลี่ยนโครงสร้างเป็นแบบนี้ครับ
work table

work_id , work_teacher_id , work_day
1 1 work day 1
2 2 work day 1
3 3 work day 2
4 4 work day 2


Quote:
แล้วลองใช้คำสั่งนี้ครับ

SELECT work_day,GROUP_CONCAT(teacher_name)
FROM work left join teacher on work_teach_id = teach_id
GROUP BY work_day;

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-07-03 16:46:24 By : sakuraei
 

 

No. 3



โพสกระทู้ ( 178 )
บทความ ( 0 )



สถานะออฟไลน์


เงื่อนไข คือ 1 day ต่อ 1 record ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-07-03 16:54:46 By : keng_ds
 


 

No. 4



โพสกระทู้ ( 3,155 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ถ้าความต้องการเปลี่ยน เกิดมีอาจารย์มากกว่า 2 ท่าน ก็ต้องแก้โครงสร้าง เพิ่มฟิวด์อาจารย์ล่ะซิ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-07-03 17:12:44 By : sakuraei
 


 

No. 5



โพสกระทู้ ( 178 )
บทความ ( 0 )



สถานะออฟไลน์


สูงสุด 2 ท่านครับ ไม่มีเพิ่มแล้วครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-07-03 17:27:52 By : keng_ds
 


 

No. 6



โพสกระทู้ ( 3,155 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


Quote:
SELECT work_day,t2.teacher_name,t3.teacher_name
FROM `work` t1 left join teacher t2 on work_teacher_id1 = t2.teacher_id
left join teacher t3 on work_teacher_id2 = t3.teacher_id

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-07-03 17:37:58 By : sakuraei
 


 

No. 7



โพสกระทู้ ( 1,994 )
บทความ ( 10 )



สถานะออฟไลน์
Facebook Blogger

เขียนแบบนี้ได้ไหมครับ

1. เรียกรายชื่ออาจารย์ทั้งหมดเก็บไว้ในอาร์เรย์
2. เรียกข้อมูลในตาราง work ตามปกติ แล้วเอาไอดีทั้งสองฟิลด์ไปเทียบกับอาร์เรย์ในข้อที่ 1 แทนค่าลงไป

ตัวอย่าง
http://sunzandesign.blogspot.com/2013/04/php-query-mysql.html
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-07-03 21:22:47 By : {Cyberman}
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่อง Join ฟิล์ตารางครับ โดยมีเงื่อนไขว่าตารางที่ 2 จะมี 2 ฟิลล์ที่เป็น FK ของตารางที่ 1
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่