10/28/2557

การใช้คำสั่ง INNER JOIN ใน MySQL

หากเราต้องการหาข้อมูลจากตารางในฐานข้อมูล MySQL จากสองตารางโดยที่มี column ที่เป็น foreign key ( pimarkey ที่ไปอยู่ในอีกตาราง )  เป็นตัวเชื่อมระหว่างสองตาราง เราสามารถหาข้อมูลจากทั้งสองตารางพร้อมกันได้ในคำสั่งเดียวโดยใช้คำสั่ง INNER JOIN


จากทั้งสองตารางจะเห็นว่า Column Movie_type_id คือ column ที่ เชื่อมระหว่างสองตารางเข้าด้วยกัน และ จากตาราง Movie เรารู้ เพียงรหัส ประเภท แต่ไม่รู้ชื่อประเภทของมันถ้าเราต้องการรู้ชื่อประเภทด้วยสามารถสร้างคำสั่ง sql เพื่อหาชื่อประเภทได้ดังนี้

SELECT
                Movie.Movie_name AS name ,
                Movie_type.Movie_type_name AS type_name ,
                Movie.qty AS stock
FROM
               Movie INNER JOIN Movie_type ON Movie. Movie_type_id =Movie_type. Movie_type_id


ผลลัพธ์ที่ได้ คือ



จาก Movie INNER JOIN Movie_type ON Movie. Movie_type_id =Movie_type. Movie_type_id
คือ การสั่งให้แสดงตาราง Movie รวมกับ ตาราง Movie_type โดยที่จะนำ column Movie_type_name มาแสดงสำหรับแถวที่มี column Movie_type_id ของตาราง Movie_type ตรงกับ column Movie_type_id ของตาราง Movie จากคำสั่ง
( ON Movie. Movie_type_id =Movie_type. Movie_type_id )