--- title: ฝึก PE กับ Bot ASR ห้องเรียนสกลฯ หลักการและระบบการจัดการฐานข้อมูล อ.เกวลี วันที่ 17 ม.ค. 2566 แมน subtitle: date: วันจันทร์ที่ 23 มกราคม 2566 เวลา 10.00 น. --- (ข้อความสดจากระบบถอดความเสียงพูดทางไกล) ได้ยินไหมคะ ค่ะ โอเคค่ะ อาทิตย์นี้นะคะ จะเป็นการแนะนำตัวโปรแกรมที่เราจะใช้เขียนระบบจัดการฐานข้อมูลนะคะ ก็จะเป็นโปรแกรมเอาอย่างงายก่อนล่ะกันนะคะ เพราะว่าไอ้ตัวภาษา SQL นี่มันก็จะมีโปรแกรมที่ใช้งานร่วมกันได้หลายโปรแกรมมาก อาจจะเป็น mysql หรือเป็น oracle แต่มันก็จะใช้ภาษาเดียวกันคือภาษา SQL ซึ่งโปรแกรมในเครื่องเราถ้าไม่ได้ติดตั้งเพิ่มเติมจะมีอยู่แล้วนะคะ ก็คือโปรแกรม Microsoft Access นะคะ บันทึกมีความสามารถที่จะพิมพ์คำสั่งภาษา SQL ลงไปได้ด้วย แล้วก็ในส่วนของตัวโปรแกรมนี้นี่ หน้าตาการทำงานมันจะคล้าย ๆ กับโปรแกรม Excel ที่เราเคยใช้งานกันอยู่แล้วนะคะ เก็บข้อมูลในรูปแบบที่เป็นตารางเหมือนกัน เราก็จะได้ทำความเข้าใจกับมันง่ายขึ้นนะคะ โดยตัว Microsoft Access นี่นะคะ ในรูปตัวโปรแกรมมันจะเป็นสีส้ม ๆ นะ มันจะเป็นโปรแกรมจัดการฐานข้อมูลเชิงสัมพันธ์นะคะ อย่างที่เราเคยได้วาดรูปไปแล้วว่าแต่ละตารางมันควรจะสัมพันธ์กันอย่างไรนะคะ โปรแกรมนี้นี่ มันก็จะมีความสามารถทั้งการจัดการฐานข้อมูลแล้วก็สร้างโปรแกรมได้ในตัวเดียวกันก็คือเป็นโปรแกรมที่ค่อนข้างครบสำหรับการทำงาน ในฐานข้อมูลเบื้องต้นนะคะ มันเลยเหมาะกับที่จะให้นักศึกษานี่ เรียนรู้แล้วก็พัฒนาโปรแกรมไว้ใช้งานนะคะ รวมถึงคนที่ อาจจะไม่มีความรู้ในการเขียนโปรแกรมมากนักนี่ เขาก็สามารถใช้โปรแกรมนี้ได้เช่นเดียวกันนะคะ เพราะว่ามันก็วิธีการใช้งานก็ค่อนข้างสะดวก แล้วก็ตัวโปรแกรมก็ใช้ง่าย คำสั่งในซอยวุ่นวายมากนะคะ หน้าตาตอนสร้างฐานข้อมูลมันก็จะเริ่มต้นประมาณนี้นะคะ แต่เดี๋ยวเราค่อยไปดูในตัวโปรแกรมกัน มันจะมีส่วนของการทำงานหลัก ๆ อยู่ด้านบนนะคะ แล้วจะเรียกเป็น Ribbon ข้างบนนะคะ ในรูปนี่มันจะเป็น 10 เกี่ยวกับกัน กำหนดโครงสร้างของตารางนะคะ แล้วก็การกำหนดหน้าจอสำหรับบันทึกข้อมูลหรือแสดงข้อมูลแล้วก็สามารถทำได้การสร้างรายงานอาหารเช่นสมมติมีรายชื่ออยู่ 10,000 รายชื่อ เราอยากให้มันออกเป็นรายงานเฉพาะชื่อที่เป็นผู้หญิง เราก็สามารถสร้างรายงานออกมาได้เหมือนกัน รวมถึงการสืบค้นการเรียกดูข้อมูลอื่นตามเงื่อนไขแล้วก็สามารถทำได้ ส่วนของการสืบค้นเรียกดูข้อมูลนี่ เราจะใช้คำสั่ง SQL ได้ด้วยตัวเองเราจะไม่ใช้โปรแกรมสำเร็จรูปทุกอย่างเราจะได้รู้เลยว่าเวลาที่เราใช้ภาษา html มันทำงานอย่างไร โดยตารางที่อยู่ในโปรแกรม access นะคะ รูปแบบของตารางนี่ ซึ่งมันเป็นมาตรฐานของการจัดเก็บข้อมูลในรูปแบบฐานข้อมูลอยู่แล้ว ถ้าเราต้องการจะบันทึกหรือเก็บข้อมูลนี่ เราก็จะต้องสร้างตารางขึ้นมาก่อนถึงจะใช้งานได้ เหมือนอาทิตย์ก่อน ๆ ที่อาจารย์ให้ศึกษาลองเปิดโปรแกรมดูนี่ บางคนจะยังพิมพ์อะไรลงไปไม่ได้เลยเ พราะว่าเรายังไม่มีตารางนะคะ มันจะดูเหมือนกดอะไรไม่ได้ เพราะเรายังไม่ได้เริ่มสร้างตารางเลยนะคะ การสร้างตารางในที่นี้นี มันก็คือการตั้งชื่อ แล้วก็กำหนดโครงสร้างของตารางด้วย ก็คือเราก็จะมีค่าใน Excel มันจะเป็นคอลัมน์ คอลัมน์ ใช่ไหมคะ ใน access ก็เหมือนกันเราก็ต้องโหลดว่าหัว Column แต่ละคอลัมน์ก็คือฟีลด์นี่แหละนะคะ มันจะมีชื่อว่าอะไรบ้าง แล้วก็คุณสมบัติของข้อมูลที่ต้องบรรจุลงไปในนะนี่ มีอะไรนะคะ เช่นเป็นตัวหนังสือเท่านั้นหรือเป็นตัวเลขผสมกับตัวหนังสือ หรือรับเฉพาะค่าตัวเลข ค่าตัวเลขจะต้องไม่เกิน 10 ตัว อะไรก็ว่าไป รวมถึงต้องกำหนดคีย์หลัก การกำหนดคีย์หลักในโปรแกรม access มันก็ง่าย ๆ กดปุ่มเดียวก็เสร็จเลย แล้วก็ต้องกำหนดความสัมพันธ์ระหว่าง 2 ตารางขึ้นไป ว่ามันจะเชื่อมต่อกันอย่างไรนะคะ ตัวอย่างโครงสร้างของฐานข้อมูลนี้เราทบทวนอีกรอบนะคะ ที่โทรอยู่ในหน้าจอตอนนี้ก็คือเราเรียกว่าตารางนะนะคะ มีแถวมีคอลัมน์นะคะ แนวตั้งเรียกว่า "คอลัมน์" ถ้าศัพท์ในระบบจัดการฐานข้อมูล ฟีลด์ อย่างในตารางนี้จะมีอยู่ 4 คือสีคอลัมน์มี 3 ได้กอดก็คือ 3 แถวข้อมูลอันนี้เป็นตัวอย่างข้อมูลผู้ป่วยนะคะ ไอ้ตัว HN นี่มันย่อมาจากรหัสป่วยนะคะ Hospital Number แล้วก็จะมีชื่อมีนามสกุลจริงที่อยู่ อันนี้เป็นตัวอย่างการเก็บข้อมูลอย่างง่าย ตัวอย่างง่าย ส่วนในโปรแกรม เราจะสร้างตารางนะคะ โดยที่กันเราจะมากำหนดคุณสมบัติของคอลัมน์แบบเมื่อกี้นี้นะคะ เราจะมากำหนดตรงที่ส่วนของการ Design หรือการออกแบบมันก็ถามว่ายังอยู่ตรงนี้ อันนี้มันเป็นภาษาอังกฤษอ่ะนะคะ ชื่อคอลัมน์อะไรนะคะ เก็บข้อมูลชนิดอะไร บางทีตัว ID นี่ ถ้าเราไม่ได้กำหนดค่ามันจะเป็น Auto มันจะเพิ่มไปเรื่อย ๆ ตามจำนวนที่เราเพิ่มเข้ามา แต่เราสามารถระบุเองก็ได้ค่ะ บางทีเราไม่อยากได้ตัวเลข 1 2 3 4 5 ไปเรื่อย ๆ บางทีก็มันอาจจะเป็นอย่างนั้นไม่ได้ทุกระบบนะคะ แม่จะต้องมีตัวหนังสือ ที่มันมีมาผสมกับตัวเลข อย่างรหัสนักศึกษาเรานี่ เข้ามาใหม่แล้ว Run 1 2 3 4 5 ไปเลยไม่ได้ มันจะต้องกำหนดเฉพาะเล่นขึ้นต้นด้วยปีการศึกษา ตามมาด้วยรหัสคณะ ตามมาด้วยรหัสหลักสูตร แล้วค่อยเป็นถึงเลขที่ของเราว่าเลขที่อะไร ตัวอย่างถ้าเป็นการทำงานในการจัดการตารางจริง ๆ นี่ มันจะไม่มีข้อมูลแค่นิดเดียวอย่างที่เราเคยเห็นอย่างด้ายซ้ายนะคะ ก็จะเป็นตัวอย่างของ ตารางทั้งหมดที่มันเอามาเชื่อมโยงกัน มีไม่ต่ำกว่า 20 ตาราง ถ้ามันเป็นระบบงานใหญ่ ๆ รวมถึงการกำหนดด้วยว่า ข้อมูลแต่ละชนิดที่เข้ามานี่ อย่างเช่น ID เขากำหนดให้เป็นตัวเลขให้มันเพิ่มขึ้นไปเรื่อย ๆ อัตโนมัติ ส่วนเลขบัตรประจำตัวผู้ป่วย เขาจะให้กรอกนะคะ แล้วก็จะมีคำอธิบายว่า ไอ้คำ คำย่อหรือหัวตารางนี่ ถ้าเป็นภาษาไทยคืออะไรนะคะ OHN คืออะไร เลขบัตรเดิม ต้องพิมพ์อย่าง หนูไม่จำเป็นต้องพิมพ์ไหมชื่อแรกจำเป็นต้องพิมพ์นามสกุล เราจะกำหนดตรงนี้ด้วยคำอธิบายถ้าในส่วนของฐานข้อมูลจะเรียกว่า เป็นพจนานุกรมข้อมูล Data Dictionary ก็คือสิ่งที่เราต้องบอกอย่างสมมติว่าจะเป็นโปรแกรมเมอร์คนใหม่มาทำงานนะคะ เห็นคำย่อ PtMarry คืออะไร มาทำงานต่อจากเขาแล้วเขาไม่เขียนอธิบายว่าคำศัพท์คำนี่มันคือข้อมูลอะไรที่ต้องตอบ นั่นคือสถานภาพสมรส สมมติเขาไม่ได้บอกเราไว้ เราก็ต้องมากว่าจะทำความเข้าใจได้ว่า สรุปข้อมูลนี้เขาต้องการข้อมูลอะไรกันแน่ เพราะฉะนั้นการเขียนคำอธิบาย ก็ค่อนข้างจำเป็นเหมือนกันสำหรับการจัดการฐานข้อมูลนะคะ ส่วนด้านล่าง จะเป็นการบอกขนาดของข้อมูลนะคะ เช่น จำนวนเงินเดือน เงินเดือนน่าจะไม่มีแค่ 2 หลัก บางคนเงินเดือนเยอะ บางคนเงินเดือนน้อย เราก็สามารถกำหนดได้ว่า เลขที่สามารถกรอกเข้าไปได้นี่ มากขนาดไหน เงินเดือนอาจจะยังไม่เห็นภาพ ถ้าสมมติว่ามันเป็นคอลัมน์ที่เกี่ยวกับงบประมาณประเทศ ที่ต้องกรอกตัวเลขเยอะ ๆ นะคะ เลข 6- 7 หลักมันไม่พอแน่นอน เราก็ต้องมากำหนดต้องดูด้วยว่าข้อมูลที่ใส่ได้ควรจะเป็นข้อมูลขนาดไหน หรือบัตรประชาชนเรามากำหนดเลยว่า ให้กรอกได้แค่ 13 หลัก เราก็จะมากำหนดตรง Property ข้างล่างตรงนี้นะคะ การสร้างตารางโดยใช้มุมมอง การออกแบบนะคะ มันก็จะมีการกำหนดว่าชื่อของฟีลด์ คือชื่อแต่ละคอลัมน์ ควรตั้งชื่ออะไร ควรจะตั้งให้มีความหมายแล้วก็ไม่ยาวจนเกินไป แล้วก็ห้ามใช้สัญลักษณ์พิเศษ พวกเครื่องหมายคำถาม เครื่องหมาย # อะไรพวกนี้ นะคะ หรือ... _ ขีดเส้นใต้เราจะไม่ใส่ รวมถึงประเทศของข้อมูลนะคะ ก็คือชนิดของข้อมูลที่จัดเก็บในคอลัมน์อยู่ฟีลด์นั้นๆ รหัสสินค้ามันควรจะเป็นได้ทั้งตัวเลขและตัวอักษรผสมกันส่วนราคานะคะ ควรจะเป็นตัวเลขอย่างเดียว เราไม่พิมพ์เราจะไม่พิมพ์ 500 แล้วก็ใส่ ก ไก่อีก 2 ตัวแทนได้ 0 มันไม่ใช่ เพื่อน 500 ก็คือเป็นตัวเลขอย่างเดียว ถ้าสมมติข้อมูลนั้น ๆ จะต้องนำไปคำนวณนะคะ ควรจะเป็นข้อมูลชนิดอะไร เช่น อายุ นะคะ คือเอาวันเดือนปีเกิดไปคำนวณ มันจะต้องเป็นตัวเลข หรือวันที่ หรืออย่างไรนะคะ เราก็ต้องมาพิจารณาข้อมูลพวกนั้นด้วย เช่น วันเข้าทำงานวั นแรกจนถึงปัจจุบันเขาทำงานมาแล้วกี่ปี ก็จะใช้วันที่ในการคำนวณนะคะ เราก็ต้องพิจารณาตัวนี้ด้วย ถ้าสมมติว่าคุณได้ไปทำฐานข้อมูลด้วยตัวเอง ข้อมูลที่เป็นข้อความหรือว่า Text นะคะ ก็จะเป็นข้อมูลที่เป็นตัวอักษรตัวเลขตัวเลข ทำไมถึงบอกว่าเป็น Text ถ้าตัวเลขที่ไม่ได้ใช้ในการคำนวณ เช่น รหัสนักศึกษาพวกคุณ เราจะไม่เอามาบวกกัน มันมีผลในการคำนวณนะคะ มันเป็นตัวเลขบอกรหัสเฉย ๆ สัญลักษณ์เครื่องหมายก็บางคนอาจจะจำเป็นที่ต้องใส่สัญลักษณ์ อย่างคำนำหน้าชื่อ บางคนก็ทีมนางสาว บางคนพิมพ์ น.ส. มันก็จะมีสัญลักษณ์มีเครื่องหมายมีตัวอักขระนะคะ ที่ผสมกัน รวมถึงตัวเลขก็ตัวเลขนี่ ก็จะมีหลายประเภทเหมือนกัน เป็นข้อมูลที่เป็นตัวเลขจะเป็นจำนวนเงินการเก็บเงินก็มีให้เลือกหลายรูปแบบนะคะ ถ้าเราเลือกข้อมูลเป็น Byte ข้อมูลที่เราเก็บได้จะมีแค่ 0-255 เท่านั้น แล้วก็เป็นจำนวนเต็ม ใส่เป็นทศนิยมไม่ได้นะคะ ข้อมูลที่เป็น integer เป็นค่าตัวเลขระหว่าง - 30,000 กว่าาก็จะถึง 32,000 จำนวนเต็มบวกเป็นเต็มบวกเต็มลบไม่มีจุดทศนิยมถ้าเป็น Long integer เมื่อกี้จากหลักหมื่นมันจะกลายเป็นประมาณ 2000 ล้านเหมาะ กับการใส่งบประมาณที่เยอะมาก ๆ หรือข้อมูลเงินใด ๆ ก็ตามที่เป็นตัวเลขที่มากกว่า integer ธรรมดาขึ้นไปนะคะ Single จะเป็นตัวเลขที่มีจุดทศนิยมนะคะ จะมีค่าไปจนถึงติดลบเป็นทั้ง ๆ ที่เป็นเต็มลบกับเต็มบวก Double ใช้กับตัวเลขที่เป็นจุดทศนิยม อย่างเช่น บางทีเราไปซื้อของเราจะถึงบ้านข้างบนเป็นจุดทศนิยมให้เราด้วย แสดงว่าการเขียนโปรแกรมในการเก็บข้อมูลของเขาเขาแสดงผลจนถึงทศนิยม 1 ตำแหน่ง 2 ตำแหน่ง 3 ตำแหน่งก็ว่ากันไป ส่วนมากถ้าเป็นค่าเงินเราจะใช้แค่ 2 ตำแหน่งนะคะ ต่อมาวันที่เวลาว่าจะเป็นการระบุข้อมูลที่มีรูปแบบที่เป็นวันที่ ค.ศ. หรือ พ.ศ. ก็แล้วแต่เราจะระบุก็ได้ โดยที่มันจะอาจจะเป็นระบบเต็มก็คือจะมีทั้งวันที่แล้วก็เวลาแต่ส่วนมากเราจะใช้แบบวัน เดือน ปีแค่นั้นนะคะ กับ Yes No questions นะคะ ใช่หรือไม่ มันจะเป็นคำถามคำตอบสำหรับข้อมูลที่เป็นตรรกะที่มีอยู่ 2 ข้างค่า ก็คือจริงกับเท็จตอนนี้คุณเป็นนักศึกษา เขาจะถามว่าจริงหรือเท็จ ถ้าเป็นยังเป็นนักศึกษาอยู่ก็ตอบว่า Yes ก็คือใช่ ถ้าเรียนจบแล้วก็จะบอกว่า No นะคะ กับ OLE Object นะคะ เพื่อเป็นข้อมูลที่เอาไว้ในการแนบรูปภาพนะคะ ฐานข้อมูลบางอย่างเขาให้เอาแนบรูปภาพด้วย เช่น บางทีเราสมัคร จะเป็นสมาชิก สมัครเรียนหนังสือ สมัครสอบให้มันแนบรูปภาพแนบใบเสร็จ ถ้าเป็นระบบขายของได้แนบใบเสร็จโอนเงินเป็นรูปภาพมาด้วยนะคะ ส่วนที่ 3 จะเป็นส่วนของการกำหนดค่าเหมือนที่อาจารย์ให้ดูเมื่อกี้นี้ในภาพนะคะ จะเป็นการบอกขนาดของข้อมูลที่จะเก็บเรากำหนดได้เลยนะคะ แล้วก็รูปแบบของการแสดงผลข้อมูลจะเป็นอย่าง การป้อนข้อมูลจะเป็นลักษณะไหน เราสามารถกำหนดได้นะคะ กำหนดคำอธิบายข้อมูลเช่นก่อนที่เราจะกรอกข้อมูลลงไปนี่ ระบบบางอันถ้าเราเอาเม้าส์ไปชี้ เขาก็จะมีคำอธิบายว่าในช่องนี้ให้กรอกข้อมูลแบบไหน ถ้าเราบอกว่าให้กรอกรหัสบัตรประชาชนพอเอาเม้าส์ไปชี้ปุ๊บ เขาบอกว่าให้กรอกเลขจำนวน 13 หลัก เป็นต้นนะคะ กับมาจะมีการกำหนดค่าเริ่มต้นเช่น เขาถามวันเกิดส่วนมากวันเกิดค่าเริ่มต้นของเขาคือจะเป็นวันที่ 1 มกราคม ปี 2000 อะไรก็ว่าไปนะคะ ก็จะเป็นค่าเริ่มต้น ถ้าคุณไม่ได้เกิดวันนั้น คุณก็เปลี่ยนค่าอื่นหรืออาจจะเป็นเงินบริจาค ถ้าเริ่มต้นจากเป็น 10 บาท ก็จะไปเปลี่ยนค่าก็ได้นะคะ กับการกำหนดเงื่อนไขของค่านะคะ เช่น เงินเดือน จะต้องเป็นบวกเสมอ บอกว่าเขาถามเงินเดือนเท่าไร คุณจะบอกว่า -5,000 ยังไม่ได้ทำศุกร์ทำงานแล้วเป็นหนี้ไปเรื่อย ๆ มันก็ไม่ใช่นะคะ ก็ต้องฆ่าบังคับจะต้องเป็นบวกเสมอ เช่นอายุ ต้องเป็นจำนวนเต็มบวกเต็มลบไม่ได้นะคะ กลับตั้งตรวจข้อความที่แสดงหากใส่ข้อมูลไม่ตรงตามเงื่อนไขเช่นอายุเป็น -20 คำสั่งแจ้งเตือนขึ้นมาว่าให้ใส่ข้อมูลที่เป็นค่าบวกเท่านั้นนะคะ ก็จะเป็นแบบนี้ เราสามารถกำหนดได้ รวมถึงข้อมูลที่ จำเป็นต้องตอบจะเว้นว่างไม่ได้เช่นเลขบัตรประชาชน คุณจะบอกว่าคุณไม่มีเลขบัตรประชาชนเป็นไปไม่ได้ เพราะฉะนั้นต้องกรอกทุกครั้ง หรืออาจจะเป็นแบบฟอร์มให้สมัครใด ๆ ก็ตาม ไอ้เลขบัตรประชาชนนี่ จะเป็นข้อมูลที่จำเป็นจะต้องกรอกเสมอ ปล่อยวางไม่ได้ การกำหนดค่าคีย์หลักนะคะ ก็ทำได้ง่ายมาก ถ้าในโปรแกรมก็คือคุณจะเลือกค่าไหนให้เป็นคีย์หลัก คลิกคอลัมน์นั้น ๆ หรือฟีลด์แล้วก็กดกกุญแจกุญแจจะหมายถึงที่รัก Primary Key นี่แหละนะคะ เลือกแล้วก็กดมันก็จะเป็นการแจ้งในระบบเลยว่าไอ้ค่านี้ คือค่าคีย์หลักของตารางนี้ กับความสัมพันธ์มันจะเป็นการสร้างความสัมพันธ์ระหว่าง 2 ตารางขึ้นไป โดยที่เราจะมีการพิจารณาเรื่องคีย์นอกของแต่ละตาราง ที่มันจะอ้างถึงคีย์หลักของอีกตารางหนึ่งนะคะ อันนี้ก็เดี๋ยวเราจะลองทำในโปรแกรม ว่ามันจะอ้างอิงกันอย่างไร ในตัวโปรแกรมนี่มันก็จะง่ายมากค่ะ มันก็จะมีตัวให้เรากดได้เลยโปรแกรมค่อนข้างสำเร็จรูปเลยนะคะ ว่าเราจะตั้งคีย์ลัดอย่างไร อันไหนจะเป็นความสัมพันธ์นะคะ ก่อนที่เราจะทำสิ่งเหล่านี้ได้เราต้องดูแล้วว่า ตารางที่เราสร้างมันสำคัญเป็นอย่างเพราะว่าเราเคยว่า แล้วก็คือเหมือนตัวอย่างที่ใช้ทำร้านหนังสือว่ าผู้แต่งหนังสือกับหนังสือ เขาควรจะมีความสัมพันธ์เป็นอย่างไร อย่างเช่นตัวอย่าง ถ้าเราสร้างความสัมพันธ์ได้แล้วมันจะเป็นแบบนี้ค่ะ มันจะมีการโยงเส้นของ 2 ตาราง ให้ดูเลยว่า ตารางนี้กับตารางนี้ เขามีความสัมพันธ์กันอย่างนี้ค่ะ 2 ตารางนี้มีความสำคัญแบบ 1 กับ 1 อย่างที่ฉันเคยบอกว่าในแต่ละโปรแกรม หรือในแต่ละหนังสือสัญลักษณ์เครื่องหมาย ข้าจะไม่ใช้ตัวเองเหมือนที่อาจารย์สอนมันเป็นความหมายเดียวกันคือ1 to many 1 มีความสำคัญมากกว่าหนึ่งกับอะไรนะคะ เพราะฉะนั้นเราหนังสือบางเล่มก็จะเขียนแบบนี้นะคะ ให้เราเข้าใจว่ามันมีความหมายเดียวกันแต่แค่มันต่างกันที่สัญลักษณ์เฉย ๆ ถ้าเป็นความสัมพันธ์แบบหนึ่ง ต่อ หนึ่ง นะคะ 1 ต่อ 1 บางรูปแบบมันจะไม่เขียนกำหนดไว้เลยเพราะ ให้รู้ด้วยตัวเองว่ามันเป็นความสัมพันธ์แบบไหนนะคะ one to one ข้อพิจารณาในการสร้างฐานข้อมูล เราต้องรู้ว่าเราจะสร้างฐานข้อมูล เพื่อมาทำงานเกี่ยวกับระบบอะไรนะคะ เหมือนในตัวอย่างคือร้านเช่าหนังสือร้านขายหนังสือ ในร้านขายหนังสือต้องมีตารางอะไรบ้าง นะคะ มันอาจจะไม่มีแค่ 3 ตัวอย่าง 3 ตารางเทียบตัวอย่างมันมากกว่านั้น คุณจะเช่า หรือคุณจะขาย หรือคุณจะมีระบบสมาชิกไหมนะคะ รวมถึงรายละเอียดในตาราง ข้อมูลจะต้องเก็บอะไรบ้าง ไฟตกหรือ ต่อไปก็ต้องดูว่าในตาราง อะไรคือคีย์หลัก ก็คือค่าที่ห้ามซ้ำกัน ในสิ่งที่เราทำได้นะ ความสัมพันธ์ของตารางข้อมูลความสัมพันธ์แบบไหนนะคะ มีค่าที่ต้องมาประมวลผล มีการคำนวณไหม เช่นอายุสมาชิก หรือวันเข้าทำงาน ทำงานมากี่ปีเพื่อพิจารณาเงินเดือน อะไรก็ว่าไป การจัดการแสดงผลออกทางหน้าจอเป็นอย่างไร งสามารถพรินต์ออกมาเป็นรายงานได้ไหม ข้อมูลเบื้องต้นที่จะใส่ใส่แล้วเป็นอย่างไร เอาไปใช้กับระบบงานอะไร เอาไปผนวกกับแล้วมีปัญหาไหมนะคะ นี่คือข้อพิจารณาในการสร้างฐานข้อมูลขึ้นมาซักระบบหนึ่งค่ะ นี่ขนาดระบบเล็ก ๆ ต้องพิจารณาตามนี้เช่นเดียวกันนะคะ กลับก่อนที่เราจะเรียนในโปรแกรมเราต้องมารู้จักคำสั่ง ที่เราจะสั่งให้ฐานข้อมูลมาทำงานก่อนภาษาที่ใช้ในการจัดการฐานข้อมูลอย่างที่บอกค่ะ เป็นภาษา SQL Structure Qury Lang ตัวนี้เรียนภาษาอังกฤษ url นะคะ มันก็เป็นเรียนรู้คำสั่งพื้นฐานสำหรับสร้างโครงสร้างของฐานข้อมูลคำสั่งในการเรียกดูข้อมูล คำสั่งสำหรับการปรับปรุงข้อมูลเพิ่มลบแก้ไขนะคะ ซึ่งภาษา SQL นี่เป็นภาษาทางด้านฐานข้อมูลที่ได้รับความนิยมมากที่สุด เป็นชุดคำสั่งที่ใช้ในการจัดการฐานข้อมูลแล้วก็ข้อมูลในฐานข้อมูลนะคะ กลุ่มคำสั่งของภาษา SQL จะมี 3 กลุ่มคำสั่ง คำสั่งแรกก็เขียนคำสั่งที่ใช้สำหรับ การสร้างฐานข้อมูลโครงสร้างฐานข้อมูลด้วยนะคะ โครงสร้างของตาราง กลุ่มที่ 2 จะเป็นกลุ่มคำสั่งที่ใช้สำหรับ เพิ่ม ลบ เปลี่ยนแปลงข้อมูลขึ้นเป็นการปรับปรุงข้อมูลนั่นเอง ส่วนกลุ่มที่ 3 จะเป็นกลุ่มคำสั่งที่ใช้สำหรับสร้าง แล้วก็กำหนดโครงสร้างจากตาราง อันนี้ก็จะเป็นภาษาที่ไม่ได้แค่สำหรับนิยามข้อมูล เป็นการสร้างด้วยนะคะ อย่างในสไลด์อาจารย์วันนี้นี่ ถ้าเราเห็น ทรงกระบอกแบบนี้นี่ ถ้าในหนังสือหรือว่าในทางถึงเชิงสกลนี่ เขาจะรับรู้ได้เลยว่าถ้าเราใส่รูปทรงกระบอกแบบนี้ สัญลักษณ์ใดที่เป็นโครงสร้างทางคอมพิวเตอร์เขารู้ไปว่านี่คือฐานข้อมูลนะคะ ส่วนผลลัพธ์ถ้าเป็นรูปภาพแบบนี้ ก็แสดงว่าเป็นการแสดงผลรายงานนอันนี้ก็เวลาคุณไปอ่านหนังสือดูหนังสือเล่มอื่น เขาเขียนแบบนี้นี่ ให้เข้าใจว่าก่อนที่จะออกจากฐานข้อมูลใช้คำสั่ง เรียกดูรายงานออกมาคนละผลรายงานเป็นอย่างไรนะคะ อันนี้เป็นโครงสร้างคำสั่งภาษา SQL สำหรับการสืบค้นนะคะ คำสั่งที่ใช้ในการสืบค้น คำสั่งที่ใช้บ่อยที่สุดก็คือคำสั่ง SELECT S-E-L-E-CTelect2นักศึกษามงคลเวลาพิมพ์ทำไมคนรับไม่ได้เหมือนเพื่อนมันพิมพ์ผิด บางครั้งก็ตกใจไม่ต้องตกใจ ผลลัพธ์ไม่ออกมาเรามานั่งไล่ดูก่อนว่าเราพิมพ์อะไรผิดไป หรือเปล่า ลืมสัญลักษณ์อะไรไหมตกทำอะไรหรือเปล่านะคะ มาเช็กด้วย คำสั่งพื้นฐานจะขึ้นต้นด้วย Select ตามมาด้วย FROM ก็คือเราจะเลือกว่าเราจะแสดงผลข้อมูลอะไร อย่างที่บอกนะคะ ต้องพยายามภาษาอังกฤษนิดหนึ่งเพรว่ามันจำเป็นนะคะ ก็คือเราจะเลือกข้อมูลจากตารางไหนนะคะ หมายถึงว่ามีเงื่อนไขในการค้นหาว่าอย่างไรบ้าง Gruoข้อมูลจะถูกรวมเป็นข้อมูลเดียวกันหรือไม่มีเงื่อนไขอะไรอีกไหมรวมถึงการจัดเรียงอย่างไรนะคะ เดี๋ยวจะมีตัวอย่างคำสั่งให้ดูที่นี่ดูตัวอย่างคำสั่งไปก่อน อันนี้เป็นตัวอย่างคำของข้อมูลนะคะ สไลด์หลังจากนี้ไปเราจะดูคล้าย ๆ แบบนี้เหมือนกัน มีตารางอยู่ 2 ตารางนะคะ อันแรกเป็นตารางหนังสือ ตารางที่ส่งจะเป็นตารางสำนักพิมพ์นะคะ ตารางแรกก็จะมีรหัสหนังสือชื่อหนังสือ รหัสสำนักพิมพ์ ราคานะคะ ตารางที่ 2 จะเป็นตารางสำนักพิมพ์ มีรหัสสำนักพิมพ์ แล้วก็ชื่อสำนักพิมพ์นะคะ คำสั่งจะแสดงผลมุมบนขวาตรงนี้ ส่วนผลลัพธ์ที่ได้จากคำสั่งภาษา SQL จะอยู่ในด้านล่างนะคะ ตัวอย่าง คำสั่งในการสืบค้นข้อมูล 1 ตาราง คำสั่งที่ง่ายที่สุดคือ SELECT FROM นะคะ เวลาอ่านคำสั่งเราจะดู ตรงนี้นะคะ ตรงนี้ ขึ้นต้นคำสั่งว่าอะไรอยู่ตรงนี้ ตัวอย่างการสืบค้นจาก 1 ตารางนะคะ * หมายถึงว่าเอาข้อมูลทุก ๆ คอลัมน์ หรือเราจะสามารถระบุได้ว่า เราจะเอาข้อมูลเฉพาะคอลัมน์ไหน ตารางอะไรนะคะ ตัวอย่างเช่นตัวนี้นะคะ ให้แสดงผลข้อมูลทุกแถว และทุกคอลัมน์ คำสั่งก็คือ SELECT ไอ้เครื่องหมาย * จะเป็น Star นะคะ select * from Book ก็คือเอาข้อมูลทุกแถวทุกคอลัมน์ตาราง book ผลลัพธ์ที่ได้ก็แสดงผลข้อมูลทั้งหมดที่อยู่ในตาราง Book นั่นเอง ถามว่าคำสั่งนี้ใครสั่ง บางครั้งอาจจะเป็นคนที่ดูแลฐานข้อมูล หรือผู้ใช้งานต้องการจะเรียกดูข้อมูลในลักษณะนี้ คำสั่งที่เกิดขึ้นที่สั่งให้คอมพิวเตอร์ทำงานก็คือ select from นะคะ อันนี้คือ select * คือเอาทุกแถวทุกคอลัมน์ แล้วถ้าเราไม่เอาทุกแถวทุกคอลัมน์ล่ะเรากำหนดได้ไหม กำหนดได้ค่ะ คำสั่งต่อมา SELECT ก็คือเรื่องชื่อกับ ราคา จากตาราง book ผลลัพธ์ที่ได้จากคำสั่งนี้ว่าจะแสดงผลเฉพาะ ชื่อ ราคาของหนังสือเท่านั้นเ พราะว่าอย่างที่เคยบอก มุมมองของผู้ใช้งานแต่ละคนไม่เหมือนกันบางคนอยากดูข้อมูลทั้งหมด บางคนอยากดูข้อมูลแค่ 2 อย่าง สามารถทำได้ไหม ทำได้ค่ะ ดูข้อมูลอย่างเดียวก็ทำได้แค่เราต้องบอกให้ถูกว่าคุณอยากดูข้อมูลจากตารางไหน รับเมื่อไร ระบุไประบบจัดการฐานข้อมูลมันก็จะดึงข้อมูลที่มาให้เราดูนะคะ ถ้าเป็นการสืบค้นแบบมีเงื่อนไขล่ะ แค่เอาคอลัมน์ล่ะมันไม่พอล่ะ เราอยากเพิ่มเงื่อนไขคำสั่งที่ในการใช้ในการเพิ่มเงื่อนไขคือคำสั่ง where นะคะ เป็น select from Where ไล่ระดับลงมานะคะ โดยอาจจะมีเงื่อนไข เงื่อนไขในการเปรียบเทียบ เวลาเปรียบเทียบนะคะ ดูสัญลักษณ์ตรงนี้มันจะเป็น > >= < พวกนี้ >= <= อันนี้ไม่เท่ากับนะคะ แม่นี้เป็นเท่ากับมากกว่าน้อยกว่านี้ค่ะ ทำตัวคั่น ให้หรือการรวบรวมเป็นและเป็นหรือคล้าย ๆ กับวิชาคณิตศาสตร์ที่เราเคยเรียนไปแล้ว เป็นการปฏิเสธ เช่น ไม่เอาข้อมูลนักศึกษาชายอะไรอย่างนี้ ตรวจสอบค่าของข้อมูลว่างให้มันตรวจดูสิว่า ข้อมูลตรงไหนมีช่องว่างข้อมูลตัวไหนหายไป ตรวจสอบเป็นช่วงเช่นช่วงอายุระหว่าง 15 ถึง 18 ปี หรือในชื่อใครมีชื่อมี จ จาน หรือในชื่อใครมีสระเอ ตรวจสอบข้อความ เช่น ในข้อความนั้นมีคำว่า "นาย" ก็คนที่มีคำขึ้นต้นว่านายทั้งหมดอะไรก็ว่าไปนะคะ มันจะมีการเปรียบเทียบเงื่อนไขด้วยนะคะ อาจารย์อธิบายไปแล้วนะคะ มากกว่าเท่ากับมากกว่าน้อยกว่ามากกว่าเท่ากับน้อยกว่าเท่ากับไม่เท่ากับนะคะ อย่างตัวอย่าง การค้นหาแบบมีเงื่อนไข อันแรกคือให้เอามาแสดงผลเฉพาะชื่อราคาจากตาราง book โดยที่มีเงื่อนไขคือ ราคาน้อยกว่า 1,000เ งื่อนไขแรกคือแสดงผลเฉพาะชื่อ กับราคานะคะ แล้วเงื่อนไขต่อมาคือ ราคาน้อยกว่า 1,000 บาท มาดูที่ราคาค่ะ อันน้อยกว่า 1,000 อันน้อยกว่า 1,000 น้อยกว่า 1,000 แสดงผลไหมคะ ไม่แสดงผล 1,950 แสดงผลไหมไม่แสดงผลเพราะฉะนั้นส่วนที่มันจะแสดงผลมีอยู่ 5 แถว แต่มันจะเลือกแสดงผลแค่ชื่อกับราคาเท่านั้น อันนี้คือคำสั่งผลลัพธ์ที่ได้ก็จะเป็นตัวนี้นะคะ วันนี้เดี๋ยวเราจะลองทำสัปดาห์หน้า อันนี้ทำให้ดูภาพก่อน คราวนี้ก็ขายเหมือนเดิมค่ะ แต่ต่างกันตรงที่ว่า คำสั่งเปรียบเทียบเป็นน้อยกว่าเท่ากับ 1000 แสดงว่าเล่มที่มีราคา 1,000 บาท มันก็จะมาแสดงผลด้วย เพราะฉะนั้นต้องดูคำสั่งเปรียบเทียบดี ๆ ว่า เขาเอาน้อยกว่าหรือน้อยกว่าเท่ากับนะคะ เ เอาให้มันจัดเรียงตามราคาก็ใช้คำสั่งนี้ล่ะค่ะ ในการจัดเรียงว่าเราอยากได้สินค้าราคาที่น้อยที่สุดไปหามากที่สุดไม่เกิน 2,000 บาท เขาก็จะเรียงมาให้ใ ช้คำสั่งนี้ล่ะค่ะ ที่ดึงข้อมูลจากฐานข้อมูลมาแสดงผลให้เรา เมื่อก่อนเราเป็นแค่ผู้ใช้งาน เราไม่รู้ว่าข้างในมันน่ะ เขียนอย่างไร วันนี้เรารู้แล้วว่างคำสั่งคอมพิวเตอร์มันว่าอย่างไร เป็นคำสั่งเดิมแต่เปลี่ยนเงื่อนไขก็คือให้ราคาไม่เท่ากับ 1,000 ก็ฉะนั้น ก็จะแสดงผลหนังสือทุกเล่ม ยกเว้นเล่มที่มันมีราคา 1,000 ไม่แสดงผลดูดี ๆ นะคะ เงื่อนไขตรงนี้เองต่างกันแค่นี้เองนิดเดียว ถ้าสมมติว่าในข้อสอบถามว่าผลลัพธ์ที่ได้จากคำสั่งนี้แสดงผลอย่างไร นักศึกษาก็ต้องเขียนออกมาให้อาจารย์ดูได้ว่าจากคำสั่งนี้ ผลลัพธ์ที่ได้ควรจะเป็นอย่างไร อันนี้มันมีแค่เงื่อนไขเดียว แต่ถ้ามันมีหลายเงื่อนไขล่ะนะคะ มันสามารถทำได้หลายเงื่อนไขไหม ได้นะคะ ก็จะมีเงื่อนไขที่เพิ่มขึ้นคือ and or ก็คือต้องเป็นไปตามเงื่อนไขทั้งหมด or ก็คือเป็นไปตามเงื่อนไขอย่างใดอย่างหนึ่งนะคะ อย่างตัวนี้คำสั่งนี้ เราดูก่อนเลยอย่างแรกเป็น OR ให้เลือกแสดงผลข้อมูลเฉพาะชื่อกับราคาจากตาราง book โดยมีเงื่อนไขคือราคามากกว่า 500หรือรหัสสำนักพิมพ์ น้อยกว่า 12 ก็มาดูนะคะ เงื่อนไขแรก ราคามากกว่า 500 มีอยู่ 2 เล่มนะคะ แล้วก็รหัส หรือรหัสสำนักพิมพ์น้อยกว่า 12 นี้ อันนี้ อันนี้ เพราะฉะนั้นจะแสดงผล 5 เล่มนะคะ ถามว่าทำไมอันนี้ มันราคาไม่เกิน 500 นี่ ทำไมมันแสดงผล ก็บอกว่ารหัสสำนักพิมพ์มันน้อยกว่า 12 มันก็เลยแสดงผลด้วยนะคะ เป็น 5 เล่ม ซึ่งแตกต่างจากตัวอย่างต่อมา เป็น AND ก็คือถ้ามันมีเงื่อนไข 2 ข้อ มันจะต้องดูทั้งเงื่อนไขทั้ง 2 ข้อ อันนี้คือมันมีเงื่อนไข 2 ข้อก็จริงแต่ว่า มันสามารถเป็นได้ทั้ง 2 ข้อ โดยที่มันสามารถเลือกได้นะคะ อันจะต้องเข้าตามเงื่อนไขทั้ง 2 ข้อเป๊ะ ๆ เท่านั้นนะคะ ให้เงื่อนไขก็คือให้ราคามากกว่าเท่ากับ 500 ราคาน้อยกว่าเท่ากับ 1000 ก็คือเป็นช่วงนั้นเอง ก็จะมีเล่มนี้ 500 เล่มนี้ 1,000 ถามว่าเล่มนี้ได้ไหม ไม่ได้ เพราะมันเกิน 1,000 เล่มนี้ได้ไหม ไม่ได้ เพราะมันน้อยกว่า 500 เพราะฉะนั้นผลลัพธ์ที่ได้ก็มีแค่ 2 เล่ม ตามเงื่อนไขนะคะ และมีเงื่อนไขมากกว่านี้ไหม มีได้ค่ะ เป็นได้ทั้ง AND และ OR นะคะ ถ้าอันไหน เป็นอันนี้คือจะต้องตามเงื่อนไขนั้นอย่างเดียวเท่านั้น เช่น ราคามากกว่าเท่ากับ 500 มีเล่มไหนบ้าง มีเล่มนี้ มีเล่มนี้นะคะ หรือpid ก็คือรหัสสำนักพิมพ์เท่ากับ 4 เท่ากับ 4 มีเล่มไหนบ้าง มีเล่มนี้มีเล่ม มีทำไมถึงเอาเพราะมันเป็นคำสั่ง OR OR ก็คือสามารถยอมรับได้นะคะ 5 เล่ม อันนี้เแต่ว่ามันก็จะมีวิธีการเขียนให้มันสั้นกว่านี้อยู่ เดี๋ยวดูไปมีอีกหลายตัวอย่างนะคะ ต่อมาเป็นเงื่อนไขในการปฏิเสธก็คือไม่เอานะคะ คือคำสั่ง Not เช่นคำสั่งนี้เงื่อนไขคือ ไม่เอารหัสสำนักพิมพ์ที่มีค่าเท่ากับ 4 อันนี้ตัดไป ตัดไป ตัดไปเ พราะฉะนั้นแสดงผลที่เหลือ ได้ ๆ อย่างเช่นเราหาซื้อของออนไลน์ไม่อยากได้สีแดง เราก็เลยว่าไม่เอาสีแดง มันก็แสดงผลสินค้าที่เหลือมาให้นะคะ หรือการหาค่าว่าง หรือการไม่มีค่าในข้อมูลนั้น ๆ เช่นลองดูสิว่าในราคา ในส่วนของราคามีอะไรเป็นค่าว่างบ้าง NULL ตัวนี้แปลว่าค่าว่างนะคะ ค่าว่างตัวนี้ มีอยู่เล่มเดียว ที่ไม่มีข้อมูลสำนักพิมพ์ไ ม่มีข้อมูลราคามีเล่มเดียว อันนี้เอาไว้เช็กว่า ข้อมูลเรามีข้อมูลอะไรหายบ้าง หรือก็สามารถให้คอมพิวเตอร์มันเช็กให้เราได้นะคะ ในทางกลับกันให้มันเช็กว่ามีข้อมูลอะไรบ้าง ที่ไม่ใช่ค่าว่างก็ใช้คำสั่งที่ใกล้เคียงกันแค่นั้นเอง เพราะฉะนั้นภาษาอังกฤษคนข้างง่ายค่ะ เป็นคำง่าย ๆ พยายามลองแปลดู คำศัพท์ก็ไม่ใช่คำศัพท์ที่ซับซ้อนอะไรมากนะคะ ที่ใช้ในการจัดการฐานข้อมูล เมื่อกี้เราใช้ AND ใช้ OR นะคะ มันพิมพ์ค่อนข้างยาว เราจะเปลี่ยนใหม่เป็นคำสั่ง Between AND นะคะ ก็คือระหว่าง เท่าไร ถึง เท่าไรนะคะ เทียบกันดูนะคะ ถ้าเราใช้คำสั่งนี้นะคะ ให้แสดงผลคอลัมน์นะคะ ที่มีค่าระหว่าง 10 ถึง 20 เราพิมพ์แค่นี้เอง แต่ถ้าเราจำคำสั่ง Between แต่ไม่ได้พิมพ์ยาวมากแบบนี้นะคะ คำสั่งตัวนี้ มันเลยทำให้เราทำงานได้เร็วขึ้น พิมฑกินน้อยลงอย่างเช่นตัวนี้เงื่อนไขคือให้เลือกสืบราคา มาโดยที่มีเงื่อนไขคือราคาอยู่ในระหว่าง 500-1000 มีกี่เล่มค่ะ มี 2 เล่ม 500 กับ 1,000 พิมพ์สั้นลงเยอะเลยนะคะ พิมพ์สั้นลงเยอะเลย เงื่อนไขคือราคาไม่อยู่ในช่วงระหว่าง 500 ถึง 1,000 มีอะไร 500 ตัดออก1000 ตัดออกเพราะฉะนั้นผลลัพธ์ที่ได้ก็จะมีลูกเล่นอยู่เยอะเลย ยกเว้นเรื่องที่ราคา 500 กับ 1,000 นะคะ หรือน่าจะค้นหาข้อมูลตามค่าที่เราต้องการนะคะ เราจะใช้คำสั่งเงื่อนไขเพิ่มเติมข้างล่างคือ i n ตัวนี้นะคะ เช่นข้อมูลที่เราต้องการก็คือ อาจจะมีตัวเลข ให้หาตัวเลขที่ระหว่าง 1-10 นะคะ ผลลัพธ์ที่ได้จะเป็น 1 3 5 7 9 นี้เราทราบอยู่แล้ว เลขจำนวนคี่ระหว่าง 1-10 นะคะ ชื่อคนที่ขึ้นต้นด้วย ส เสือ ม ม้า มีอะไรบ้าง สมชาย สมพงษ์ สมศักดิ์ อะไรก็ว่าไปในฐานข้อมูลนะคะ ทุกอย่างก็คือเงื่อนไขให้แสดง ชื่อหนังสือกับราคา ที่ราคาหนังสือ in มีค่า 250 หนังสือเล่มละ 500 1500 ผ่านเล่นไหนบ้างมี 250 มีไหมมี 1 เล่ม 500 มีไหม 500 มี 1 เล่ม 750 มีไหมไม่มี 1000 มีไหม เพราะฉะนั้นแสดงผล 3 เล่มนะคะ ถามว่าเราค้นหาไม่เจอ แล้วมันเกิดอะไรขึ้นไหมไม่เจอก็คือไม่เจอ นะคะ ก็แสดงว่าในฐานข้อมูลเราไม่มีหนังสือเล่มละ 750 แค่นั้นเองนะคะ หรือการค้นหาหนังสือที่ราคาไม่อยู่ในราคาที่ 250 250 ตัดออกไป ไม่เอ า500 เอาไหม ไม่เอา 750 ไม่มีตัดออก เพราะฉะนั้นแสดงผลหนังสือเล่มที่เหลือบอกเขาว่าไม่เอาหนังสือราคา 250 ไม่เอา 500 ไม่เอา 750 ไม่เอา 1,000 อย่างนั้นก็แสดงผลค่าที่เหลือแค่นั้นเองคือการตัดออกนะคะ ต่อมาคราวนี้เป็นการระบุราคาไปแล้ว เราจะระบุเป็นข้อความนะคะ เป็นตัวอักษรก็ได้ จากเมื่อกี้เป็นคำสั่ง in คราวนี้จะเป็นคำสั่ง like Like เหมือนกดไลค์นี่ล่ะนะคะ ก็จะเป็นคนการค้นหาส่วนของข้อความ บางครั้งเราจะไม่ได้พิมพ์ชื่อเต็ม ๆ ของเขา อาจจะเป็นส่วนของชื่อก็ได้ จำชื่อเขาไม่ได้เขาน่ะ น่าจะชื่อสม ๆ พงษ์ ๆ อะไรประมาณนี้ซึ่ง มันเป็นส่วนของคำของชื่อของคนที่ชื่อว่าอาจจะจำคำชื่อขึ้นต้นเขาไม่ได้จำได้บางส่วนสามารถค้นหาได้เหมือนกันบางคนอาจจะพิมพ์คำว่า "" จำไม่ได้ก็สามารถค้นหาได้เหมือนกันเป็นบางส่วนของข้อความ โดยที่การค้นหาส่วนของข้อความใด ๆ โดยที่ไม่จำกัดตัวอักษรเราจะใช้เป็นตัวเปอร์เซ็นต์หรือตัว * เป็นดอกจันตัวนี้ก็ได้ เดี๋ยวจะมีตัวอย่างให้ดูหรือเป็นส่วนของข้อความใด ๆ ที่มีขนาดแค่ 1 ตัวอักษร เราจะใช้เป็น _ หรือเครื่องหมาย ? ในส่วนของโปรแกรม Microsoft Access เราจะใช้เป็นเครื่องหมาย ? หรือเป็นวงเล็บวงเล็บเป็นสี่เหลี่ยมแบบนี้นะคะ ก็คือให้ตัวอักษรใดที่ปรากฏในช่อง ต้องเป็นตัวอักษรนั้นเท่านั้น แต่ถ้ามีเครื่องหมายตกใจ ! มันจะเป็นการบอกว่าไม่เอาตัวอักษรนั้นนะคะ อาจจะเป็นช่วงตัวอักษรก็ได้เ ดี๋ยวดูตัวอย่างเลยแล้วกันมันจะได้เห็นภาพนะคะ อย่างเช่นเงื่อนไขคือ ให้ค้นหาชื่อหนังสือราคาจากตารางหนังสือ โดยที่ชื่อหนังสือนะคะ ขึ้นต้นด้วย N ตามด้วยอะไรก็ได้ ถ้าเป็นเครื่องหมาย* ตัวนี้คือขึ้นต้นด้วยตัวหนังสือนั้น ๆ ตามด้วยอะไรก็ได้ในตารางเรา ลองดูสิคะ ต้นด้วยตัว N ชื่อมี 2 ชื่อเพราะฉะนั้นแสดงผล 2 อันขึ้นต้นด้วยต N อันอื่นไม่ได้ขึ้นN แล้ว ตัวมาหาชื่อหนังสือที่ขึ้นต้นด้วยอะไรก็ได้ ลงท้ายด้วยอะไรก็ได้ แต่ในชื่อนั้นมีตัว C ขึ้นต้นด้วยก็ได้ค่ะ ลงท้ายอะไรก็ได้ ในคำนั้นน่ะต้องมีตัว C อันแรกชื่อแรกมีไหมคะ ไม่มี ชื่อที่ 2 มีตัว C ตรงตามเงื่อนไขไหม ขึ้นต้นก็ได้ลงท้ายด้วยอะไร ก็ได้แต่มีตัว C โตมามีไหมมีตัว C อันนี้ก็มีนะคะ ตัวนี้ถามว่าได้อ่ยางไรก็มันขึ้นต้นด้วยอะไรก็ได้อาจจะขึ้นตัวสีก็ได้ขอให้มีตัว C เป็นประกอบเพราะฉะนั้นก็จะมีหนังสืออยู่ 4 เล่ม4 เล่มนี่คือผลลัพธ์เพราะฉะนั้นบางทีนี่ อาจารย์อยากค้นหาชื่อนักศึกษานะคะ ชื่อจริงเขาไม่ได้ จำได้เขามีคำว่า "พร" ในสักอย่างอะไรนี้นะคะ ฐานข้อมูลก็สามารถค้นหาข้อมูลให้เราได้เช่นเดียวกันนะคะ รู้อย่างนี้จะเริ่มสังเกตแล้วว่าทำไมมันมีเครื่องหมายคำถาม แล้วก็ * ถ้ามีเครื่องหมายคำถามตัวนี้หมายความว่าข้างหน้าตัว E 1 ตัวอักษรเท่านั้น1 ตัวตามหลังตัว E เป็นกี่ตัวก็ได้ มาดูเงื่อนไขกันเลยนะคะ ถามว่าในหนังสือเล่มนี้ได้ไหม ไม่ได้เพราะตรงก่อนหน้าตัว E มีตัวหนังสือก่อนหน้า 5 ตัว ซึ่งผิดเงื่อนไข ถ้าเป็นเครื่องหมายคำถาม ตัวหนังสือที่นำหน้า E จะต้องมีแค่ 1 ตัวเท่านั้น เล่มนี้ล่ะมีแต่ก่อนหน้าตัวเองมีหนังสือตัวหนังสือเยอะเลยก็ไม่ได้นะคะ เล่มนี้ได้ไหม ขึ้นต้นด้วย 1 ตัวอักษร ตามหลังด้วยตัว E ได้ อันนี้ไม่มีนะคะ เล่มนี้ก็ไม่ได้ เล่มนี้ได้ขึ้นต้นด้วย 1 ตัวก่อนว่าตัวเองแค่นั้นเพราะฉะนั้นมีแค่ 2 เล่ม เล่มนี้ก็ไม่ได้ เพราะก่อนหน้าตัว E มีตัวหนังสือมากกว่า 1 ตัวนะคะ ผิดเงื่อนไข เงื่อนไขว่าให้ชื่อหนังสือขึ้นต้นด้วยตัว N หรือตัว O ตามหลังด้วยอะไรก็ได้นะคะ ก็จะมีกี่เล่ม เล่มนี้ขึ้นต้นด้วยตัวเอนได้ ได้มีตัว O 1 เล่มก็แสดงผลหนังสือ 3 เล่มนะคะ อันนี้เป็นการดูเงื่อนไข แล้วเดี๋ยวอาทิตย์หน้าพวกกูจะต้องไปทำเอง อาจารย์อาจจะให้คุณสร้างแล้วก็ อาจจะกำหนดว่าให้คุณลองพิมพ์เงื่อนไขตามนี้ดูสิ และให้แสดงผลตามที่อาจารย์กำหนด คุณก็ต้องพิมพ์คำสั่งให้ถูก เช่น ข้อมูลสัปดาห์หน้าอาจารย์อาจจะบอกว่าให้แสดงผลคนที่ขึ้นต้นชื่อด้วย ส เสือกับตัวอ อ่าง อาทิตย์หน้านักศึกษาก็ต้องทำได้นะคะ เพราะว่าอาทิตย์นี้มีตัวอย่างแล้วนะ เงื่อนไขต่อมาชื่อหนังสือที่ไม่ขึ้นต้นด้วยตัว n ตามหลังด้วยอะไรก็ได้ ก็หลายเล่มเลยนะคะ เล่มนี้ เล่มนี้ เล่มนี้ แค่นี้เอง ต่อมาจะเริ่มเป็นการปรับปรุงฐานข้อมูล จะเป็นการกำจัด ข้อมูลที่อาจจะมีการซ้ำกันเกิดขึ้น ก็คือรายการซ้ำนะคะ มี 2 คำสั่ง ก็จะมีการใช้คำสั่งที่อาจจะกำจัดรายการข้อมูลซ้ำให้เหลือรายการเดียว โดยใช้การกำหนดค่าต่าง ๆ เป็นเกณฑ์ กับคำสั่งต้องมาเป็น Disting ตัวนี้ ก็ลบทิ้งทั้งแถวขอดูตัวอย่างการนะคะ โดยคำสั่งก็คือให้เลือกกำจัดชื่อซ้ำชื่อที่ 3 นะคะ จากตาราง Student ดูในตาราง student ในช่องชื่อ ดูเฉพาะชื่อนะคะ อันไหนชื่อซ้ำ มีซ้ำ 1 คนสีแดง เพราะฉะนั้น การแสดงผลว่าก็จะเป็นแค่ 3 ชื่อที่เหลือเพราะว่าแดงมีซ้ำ 3 คน เราจะตัดให้เหลือแค่หนึ่งแดงเท่านั้นนะคะ ข้อมูลอย่างอื่นเราไม่สนใจ แค่อยากรู้ว่าคนที่ชื่อซ้ำกันตัดชื่อซ้ำออกนะคะ นี่คือคำสั่งให้ตัดข้อมูลทิ้งทั้งแถวนะคะ อย่างตอนนี้ถ้ามันซ้ำกันจริง ๆ ถ้านักศึกษาสังเกตดี ๆ คนชื่อแดงซ้ำกันก็จริงนะคะ แต่นามสกุลนี่ ไม่ซ้ำกัน แต่จะมีนี้ ซ้ำทั้งชื่อทั้งนามสกุล ถ้าใช้คำสั่งนี้นะคะ มันจะตัดข้อมูลที่ซ้ำกันทั้งแถวออก อันนี้ก็คือเดี๋ยวเราไปดูในโปรแกรมจริง ๆ ดีกว่านะคะ เพราะว่าตัวอย่างมันอาจจะยังดูเห็นภาพไม่ชัดมันจะดูน้อยไป เดี๋ยวอาทิตย์หน้าเราได้ทำของจริงนี่ เราจะได้ทำเยอะกว่านี้นะคะ ต่อมาจะเป็นการเรียงลําดับข้อมูลนะคะ ก็จะใช้คำสั่ง OrderBy นะคะ ก็คือการเรียงลำดับนะคะ ก็คือให้แสดงผลข้อมูลทั้งหมดจากตาราง book โดยให้เรียงลำดับตามราคาถ้าเราไม่สั่งเพิ่มเติม มันจะเป็นการเรียงจากน้อยไปหามากนะคะ คำสั่งนี้คือ Orderby คือให้เรียงลำดับจากราคาน้อยไปหามาก เรียงศัพท์ใหม่จะเปลี่ยนตามลำดับที่เราสั่ง แต่ถ้าเราอยากเรียงจากมากไปหาน้อย เราจะต้องระบุเพิ่มได้ว่า Desc ตรงนี้นะคะ มันจะหมายถึงว่าให้เราเรียงลำดับตามราคาก็จริง ให้หน่อยจากราคามากไปหาราคาน้อยนะคะ ต้องบอกด้วย เวลาเราใช้เว็บในการซื้อของออนไลน์ค่ะ เหมือนกันไส้ในของโปรแกรมมันคือคำสั่งที่ที่เราเรียนวันนี้นะคะ นักศึกษาจะได้เข้าใจเพราะต่อไป เราจะไม่เป็นแค่ผู้ใช้งานแล้ว อาจจะได้เป็นผู้ดูแลระบบด้วยนะกลับมาแล้วจะมีฟังก์ชันการคำนวณทางคณิตศาสตร์ ที่เกิดขึ้นในการจัดการฐานข้อมูลด้วยอาจจะเป็นฟังก์ชันสำหรับการบวกการนับการหาค่าเฉลี่ยนะคะ ไอ้ AVG ตัวนี้มันย่อมาจาก average คือการหาค่าเฉลี่ยนะคะ หาค่าน้อยที่สุด ค่ามากที่สุด อันนี้เป็นคณิตศาสตร์ก็ต้องเอามาใช้ด้วยนะคะ อย่างเช่น ให้รวมราคาทั้งหมด แล้วให้ตั้งชื่อคอลัมน์ใหม่ ชื่อว่า SUM PRICE ตัวนี้ ให้รวมราคาทั้งหมด ใส่ในคอลัมน์ใหม่ฟีลด์ใหม่จากตาราง Book เพราะฉะนั้นผลลัพธ์จากคำสั่งนี้ ก็คือการเอายอดรวมราคาหนังสือทั้งหมดมาบวกกัน ก็ให้ได้ผลลัพธ์ตัวนี้นะคะ ก็ไม่ยาก ถ้าเราจำคำสั่งได้ ไม่อยากเลย มีบวกแล้วก็ต้องมีนับ ให้นับจำนวนจากรหัสหนังสือทั้งหมด จากตาราง book โดยให้ชื่อคอลัมน์ใหม่ชื่อว่า CountBook ก็คือให้นับจำนวน Book ID คือหนังสือทั้งหมดนะคะ มีกี่เล่มมันก็รับมาได้ 7 เล่มอันนี้คือมันง่าย มันมองมัน... เรามองดูด้วยสายตาแล้วก็รู้ หาdข้อมูลมันเยอะกว่านี้ล่ะ แล้วคุณจะรู้ได้ไงว่าตอนนี้มันยังมีหนังสือกี่เล่มสมุดว่าให้คุณดูแลระบบจัดการห้องสมุดทั้งหมดของมหาวิทยาลัย มันไม่สามารถยืนดูที่หน้าประตูแล้วบอกได้ว่าเรามีหนังสือกี่เล่มใช่ไหมคะ มันก็ต้องบวกจากฐานข้อมูล ถ้าสมมติว่าเราไปฝึกงาน แล้วมีเจ้าหน้าที่ถามว่าให้เด็กฝึกงานไปดูสิว่า มีหนังสือกี่เล่ม คุณจะไปเดินนับไม่ใช่ เราสามารถสั่งได้จากฐานข้อมูลเลย ว่าวันนี้ในห้องสมุดมีหนังสือกี่เล่ม หรือในอนาคตคุณต้องไปฝึกงานแน่นอนอีกน่าจะบอกว่าเด็กฝึกงานไปนับสิ ของในโกดังมีกี่ชิ้น คุณจะไปนั่งนับหรือ มันก็สามารถมีวิธีการสั่งจากฐานข้อมูลนีละนับดูซิว่าสรุปสินค้าและมีกี่อย่างจะไปนั่งนับมันไม่ได้หรอกค่ะ ในชีวิตจริงนะคะ คำสั่งนี้ก็ค่อนข้างจำเป็นนะคะ สำหรับใช้ในการฝึกงานหรือทำงานในอนาคตนะ หรือการหาค่าเฉลี่ยนะคะ ก็จะเป็นการหาค่าเฉลี่ยของราคาของสินค้าทั้งหมด โดยให้ตั้งชื่อคอลัมน์ใหม่ชื่อว่า avgprice ค่าเฉลี่ย แสดงว่าหนังสือ 7 เล่มนี้นะคะ มีค่าเฉลี่ยสองเล่มประมาณ 640 2.14 ตัวนี้ถ้าสมุติว่ามีใครต้องการข้อมูลจากเราเราก็สามารถให้เขาดูได้ ต่อมาเขาถามว่าค่าหนังสือที่ถูกที่สุดในร้านเท่าไร คุณจะไปเดินหาก็ไม่ใช่ เราแค่สั่งให้ฐานข้อมูลมาแสดงผลสิว่า ราคาสินค้าที่ถูกที่สุดนะคะ โดยที่ให้กำหนดใส่ในคอลัมน์ใหม่ ราคาที่ถูกที่สุดตอนนี้คือถ้าเรามองด้วยสายตาเราก็ทราบล่ะว่า 150 อย่างที่อาจารย์บอกถ้าเกิดสินค้ามีเป็นหมื่นเป็นแสนชิ้นมานั่งไล่ดูเสียเวลาค่ะ ฐานข้อมูลสแกนได้ ให้มันค้นหาให้คุณเลยไม่เกิน 1 นาทีรู้แน่นอนนะคะ หาราคาน้อยที่สุด แล้วก็อันนี้เป็น MAX PRICE นะคะ ก็ดูราคามากที่สุดได้เช่นเดียวกันต่อมาเป็นการรวมกลุ่มข้อมูลนะคะ เป็นการรวมตามเงื่อนไข ในเงื่อนไขทุกอย่างก็คือใช้คำสั่ง GroupBy นะคะ เป็นการรวมกลุ่มตามเงื่อนไขเช่น ให้ดูช่องนี้นะคะ รหัสสำนักพิมพ์ รวมราคาออกมา รวมราคาออกมา โดยที่ให้รวมเป็นตามเลขสำนักพิมพ์สำนักพิมพ์นี้ อธิบายเป็นง่าย ๆ นะคะ สำนักพิมพ์นี้มีหนังสือกี่เล่ม รวมแล้วมูลค่าเท่าไรนะคะ อย่างเช่นสำนักพิมพ์หมายเลข 4 มีหนังสืออยู่ 3 เล่ม มันก็จะรวมให้ว่า มูลค่าหนังสือของสำนักพิมพ์นี้ เป็นราคาเท่านี้ สำนักพิมพ์ที่ 5 มีหนังสือกี่เล่มก็รวมมาอาจจะมีเล่มเดียวได้เท่านี้สำนักพิมพ์ที่ 12 มี 3 เล่ม รวมราคามาทั้งหมดได้เท่านี้อันนี้คือคำสั่ง Group by คือจัดกลุ่มออกมานั่นเองนะคะ เป็นการจัดกลุ่มข้อมูล เช่น นักศึกษาปี 3 ชายรวมแล้วมีกี่คน อาจจะรวมโดยทั้งคณะ หรือทั้งมหาวิทยาลัยแล้วแต่เรากำหนดเงื่อนไขนะคะ ถ้ามีเงื่อนไขนอกเหนือจากที่เรากำหนดไปแล้วเมื่อกี้ คือเราให้จัดกลุ่มเป็นรหัสสำนักพิมพ์ แต่ถ้ามีซ้อนเงื่อนไขเข้ามาอีกเราจะเพิ่มเป็นคำสั่ง Having ตัวนี้ ถ้าเงื่อนไขเดียวมันไม่พอ จากเมื่อกี้นี้ เราเพิ่มเข้าไปอีกว่าให้เป็นรหัสสำนักพิมพ์ที่มีค่ามากกว่าเท่ากับ 5 มันก็จะตัดสำนักพิมพ์ที่ 4 ออกไป เหลือแค่ 2 สำนักพิมพ์ แล้วแต่ว่าเราจะเพิ่มเงื่อนไขอะไรอีกนะคะ เพราะว่าอย่างที่บอกมุมมองการดูข้อมูลของผู้ใช้งานแต่ละคนไม่เหมือนกัน แล้วแต่ว่าเขาจะอยากดูข้อมูลแบบไหน อยากได้รายงานแบบไหนนะคะ ระบบจัดการฐานข้อมูลก็สามารถจัดการได้ทั้งหมดนะคะ ต่อมาจะเป็นส่งของคำสั่งในการปรับปรุงฐานข้อมูล ก็คือเป็นการเพิ่ม แก้ไข การลบข้อมูลนะคะ การเพิ่มข้อมูลเราจะใช้คำสั่ง insert into แล้วก็ใส่ Value รูปแบบคำสั่งจะเป็นแบบนี้นะคะ เช่นตัวอย่างข้อมูลเดิมจะอยู่ด้านข้อมูลด้านซ้ายนะคะ คำสั่งที่เพิ่มเติมก็คือ อันนี้คือเงื่อนไขคือยังไม่ระบุคอลัมน์นะคะ ว่าให้ใส่คอลัมไหน แต่ถ้าเราพิมพ์แบบนี้แสดงว่าเรารู้แล้วว่าข้อมูลที่เราจะใส่แล้วมันก็จะเรียงลำดับตามนี้นะคะ ถ้าคุณสลับตำแหน่งมันก็จะไม่สนใจว่าคุณใส่คอลัมน์ผิดคำถูก ไม่รู้ คำสั่งก็คือ insert into ตัวนี้ ให้ใส่ข้อมูลลงไปในตาราง book ซึ่งมีค่าดังนี้ 1009 sql 5 520 ผลลัพธ์ที่ได้จะมาอยู่ล่างสุด ทำไมมันใส่คอลัมน์ถูกต้องเพราะคำสั่งใส่ข้อมูลนี่มันเรียงมาถูกต้องอยู่แล้ว แต่ถ้าคุณสลับตำแหน่งผิดใส่ 520 มาอยู่ตรงนี้แทนนี่ มันก็จะกลายเป็น Book ID 520 นะคะ แต่นี้ที่มันใส่ถูก เพราะว่าเรียงลำดับตามคอลัมน์ต้องแค่นั้นเอง ต่อมาเพื่อความชัวร์เราอาจจะระบุชื่อคอลัมน์ไปด้วยก็ได้ ว่าข้อมูล 10 10 นี่ให้อยู่ใน Book ID นะ ชื่อหนังสือ vb รหัสสำนักพิมพ์คือ 5 ราคาคือ 250 ข้อมูลจะมาต่อท้ายด้านล่างแบบนี้อันนี้ก็เพื่อป้องกันว่าเราจะใส่ข้อมูลผิดคอลัมน์หรือเปล่านะคะ อันนี้คือการเพิ่มข้อมูลนะคะ ง่ายมากคำสั่งมีแค่นี้เอง insert intoสำหรับการเพิ่มข้อมูล ต่อมาเป็นคำสั่งในการ ปรับปรุงข้อมูลหรือแก้ไขข้อมูลนะคะ จะใช้คำสั่ง Update Set ถ้ามีเงื่อนไขก็สามารถใส่เงื่อนไขเพิ่มได้นะคะ รูปแบบคำสั่ง Update คือปรับปรุงข้อมูลในตาราง โดยมีค่าคือให้ราคาทั้งหมดบวกเพิ่มเข้าไปอีก 50 บาท พอพิมพ์ตัวนี้ปุ๊บ ราคาหนังสือจะเพิ่มขึ้นจากเดิม 50 บาททุกเล่ม จากเดิมตัวนี้ไม่มีราคาหนังสือ ก็จะมีล่ะ 50 บาท อันนี้คือง่ายมาก ถ้าสมุติว่าข้อมูลเรามีแค่นี้ล่ะเรานั่งกินที่ร้านก็ได้ค่ะ ถ้าสมมติว่าวันนี้เราเป็นร้านขายของที่มีของประมาณ 1 ชิ้น น้องบอกว่าเศรษฐกิจไม่ดีขอขึ้นราคาคุณจะมานั่งพิมพ์ใหม่ทุกวันทุกวันทุกวันเมื่อไหร่จะเสร็จ เพิ่มขึ้นทีละ 10 บาท มีของอยู่แสนชิ้นนั่งกินเป็นแสนครั้งแต่ถ้าเรารู้จักคำสั่งในระบบจัดการฐานข้อมูลและพิมพ์แค่ 2 บรรทัดทุกอย่างเสร็จหมดเลยนะคะ นี่คือการปรับปรุงฐานข้อมูล อันนี้คือก็คือประโยชน์หนึ่งของฐานข้อมูลนะคะ เพราะว่าถ้าเราไม่มีคำสั่งเรานี้นี่ บางทีไม่ต้องมานั่งพิมพ์ใหม่นี่เหนื่อยมาก ๆ นะคะ นี่คือประโยชน์ถ้าเรารู้คำสั่งนะคะ ถ้ามีเงื่อนไขเพิ่มเติม เงื่อนไขเพิ่มเติมนะคะ ให้ปรับปรุงตาราง Book โดยที่เงื่อนไขคือตอนนี้เศรษฐกิจมันดีแล้ว ของมันถูกให้ลดราคาสินค้าลง 50 บาท เฉพาะรหัสสำนักพิมพ์ 12 เท่านั้น เฉพาะบางบริษัทก็ว่าไปอย่างไป เช่น วันนี้สินค้าราคาลงเฉพาะบริษัทนี้ เราก็สามารถเปลี่ยนแปลงราคาลงได้ พิมพ์เพิ่มอีกบรรทัดหนึ่งนะคะ ถามว่าแล้วสินค้าในบริษัทฯ จะเปลี่ยนไหม ไม่เปลี่ยนนะคะ เพราะเรากำหนดเงื่อนไขว่าเฉพาะสำนักพิมพ์ 12 เท่านั้นที่ลดราคาลง 50 บาทคำสั่งลบก็ง่าย ๆ ค่ะ delete from ก็ตามนี้เลยนะคะ ให้ลบข้อมูลจากตาราง Book โดยมีเงื่อนไขคือให้ลบเฉพาะ Book ID ที่มีค่า 1010 จากเดิมจะมีตัวนี้แล้วก็ลบออก ผลลัพธ์ที่ได้จะเป็นแบบนี้ อันนี้คือคำสั่งอย่างง่าย ที่เราจะเรียนในสัปดาห์หน้านะคะ เดี๋ยวอาทิตย์หน้าอาจารย์จะเตรียมข้อมูลมา ให้นักศึกษาเพิ่มฐานข้อมูลเอง พิมพ์เองนะคะ ตั้งค่าคีย์หลักเอง กรอกข้อมูลเองทั้งหมด ลองเพิ่ม ลบข้อมูล ลองดึงข้อมูลเป็นรายงานออกมาด้วยตัวเอง สัปดาห์นี้จะให้ลองกลับไปทบทวนว่าคำสั่งที่จะใช้ select from Delete from update set insert into อะไรก็ว่าไป มันจะเป็นอย่างไรบ้างนะคะ หน้าวอร์มนิ้วมือมาให้พร้อม เพราะเราต้องพิมพ์เองเครื่องใครเครื่องมัน เครื่องใครเครื่องมันพิมพ์ภาษาอังกฤษไม่ค่อยคล่องก็จะได้คล่องนี่ล่ะอาทิตย์หน้านะคะ พิมพ์บ่อย ๆ เพราะว่าการพิมพ์คำสั่ง SQL ง่ายที่สุดแล้ว ในการเขียนโปรแกรมอาทิตย์นี้ก็จะประมาณนี้นะคะ เดี๋ยวเราอาทิตย์หน้าก็มาให้เร็วหน่อย เพราะว่าเราจะเป็นปฏิบัตินะคะ ก็ขอบคุณล่าม ขอบคุณถอดความนะคะ วันนี้ก็ประมาณนี้ค่ะ ขอบคุณมากนะคะ