บางครั้งเราอาจจะเจองานที่ต้องมีการดึงฟิลด์บางฟิลด์ของอีกตารางนึงมาใส่อีกตารางนึง
เพราะจำเป็นต้องใช้ในงาน
แต่หากข้อมูลปริมาณมากอาจจะไม่สามารถที่จะมานั่งกรอกด้วยมือเองเป็นแน่ดังนั้นเลยต้องใช้คำสั่ง
Sql เพื่อเข้าช่วยทุ่นแรงงาน
เพื่อให้เข้าใจลองมาดูตัวอย่างแบบง่ายๆกันเลยดีกว่าครับ
1. ตารางชื่อ employee เก็บข้อมูลพนักงาน มีฟิลด์ emp_id,name,pos_id (รหัส,ชื่อพนักงาน,รหัสตำแหน่ง)
2. ตารางชื่อ position เก็บข้อมูลตำแหน่งที่มีในบริษัท มีฟิลด์ pos_id,name (รหัสตำแหน่ง,ชื่อตำแหน่ง)
วันดีคืนดีเราจำเป็นต้องเพิ่มฟิลด์ที่ชื่อว่า emp_count ในตาราง
position เพื่อเก็บจำนวนพนักงานในแต่ล่ะตำแหน่ง จะได้เป็น ตารางชื่อ
position เก็บข้อมูลตำแหน่งที่มีในบริษัท มีฟิลด์ pos_id,name,emp_count
(รหัสตำแหน่ง,ชื่อตำแหน่ง,จำนวนพนักงาน) ทีนี้เราจะต้องการนำ
“จำนวนพนักงาน” ของแต่ละตำแหน่งมาใส่ในฟิลด์ emp_count ที่เราสร้างขึ้น
เราก็ใช้คำสั่ง Sql ดังนี้
บรรทัดที่ 1 อัพเดทตาราง position ตั้งชื่อย่อเป็น pos ขั้นด้วย ,
บรรทัดที่ 2 ภายในวงเล็บนำคำสั่งที่เรานับจำนวนพนักงานด้านบนมาใส่แล้วตั้งชื่อย่อตารางเป็น emp
บรรทัดที่ 3 ให้นำ emp.emp_count จำนวนพนักงานที่ได้จากการนับมาอัพเดทใส่ในฟิลด์ pos.emp_count
บรรทัดที่ 4 มีเงื่อนไขให้อัพเดทรหัสตำแหน่งรหัสเดียวกัน “ไม่งั้นเดี๋ยวอัพเดทผิดนะจ๊ะ”
จากตัวอย่างด้านบนหลักการทำงานก็จะเป็นรูปแบบคำสั่ง Update ปกติ เพียงแต่มีการเพิ่ม Query เพื่อไปดึงข้อมูลจากตารางอื่นเข้ามาด้วย ทีนี้การทำงานจริงคงไม่เหมือนกันก็ลองนำไปดัดแปลงใช้งานกันต่อตามความเหมาะสมนะครับ ก็หวังว่าบทความนี้คงมีประโยชน์บ้างสำหรับผู้ที่เข้ามาอ่านทุกท่านครับ
0 ความคิดเห็น:
แสดงความคิดเห็น