PostgreSQL : คำสั่ง SQL การใช้ INNER JOIN

PostgreSQL แชร์ความรู้เกี่ยวกับ PostgreSQL การใช้งาน ฟังก์ชั่นต่างๆ การเขียน SQL แบบ PGSQL

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
thitikorn_lp
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 680
ลงทะเบียนเมื่อ: 28/07/2014 10:24 am

PostgreSQL : คำสั่ง SQL การใช้ INNER JOIN

โพสต์โดย thitikorn_lp » 10/02/2015 6:25 pm

การใช้ INNER JOIN (การเลือกข้อมูลจากหลายตาราง)

  การใช้ INNER JOIN เป็นการเลือกข้อมูลจากตารางใดตารางหนึ่ง เพื่อนำไปรวมกับตารางอื่นที่มีข้อมูลเกี่ยวข้องกัน

ตัวอย่าง : จะทำการเลือกตาราง sale_order และตาราง res_partner นำมาทำการ INNER JOIN กัน เพื่อดูว่า รายการสั่งซื้อแต่ละใบเป็นของใครบ้าง

รูปแบบคำสั่ง :

โค้ด: เลือกทั้งหมด

SELECT ชื่อคอลัมน์
         FROM  ชื่อตาราง A
         INNER JOIN ชื่อตาราง B ON ตาราง A.ชื่อคอลัมน์(ที่มีความสัมพันธ์กับตาราง ฺ)=ตาราง .ชื่อคอลัมน์;

โค้ด :

โค้ด: เลือกทั้งหมด

SELECT res_partner.id,res_partner.name,sale_order.partner_id, sale_order.date_order ,sale_order.name,  sale_order.amount_total
FROM sale_order
INNER JOIN res_partner ON res_partner.id=sale_order.partner_id


ผลที่ได้ :
จากตาราง sale_order // ข้อมูลการขายและรหัสของผู้ซื้อ
2015-02-10_18-15-21.png


จากตาราง res_partner // ข้อมูลรายชื่อของลูกค้าทั้งหมดในฐานข้อมูล
2015-02-10_18-23-11.png


เมื่อนำมาทำการเชื่อมกันด้วย INNER JOINE ผลที่ได้คือ รายชื่อของ partner ที่มีใน sale_order จะแสดงขึ้นมา
2015-02-10_18-22-27.png


ผลลัพธ์ที่เราได้คือ ส่วนสีม่วงที่อยู่ตรงกลาง // นั่นคือส่วนที่มีอยู่ร่วมกันนั่นเอง :mrgreen:
Untitled-1.png
คุณไม่มีสิทธิ์ดูไฟล์ที่แนบมาในกระทู้
รูปภาพ

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 4 และ บุคคลทั่วไป 0 ท่าน