ในโลกของการจัดการฐานข้อมูล การ ‘ค้นหา’ และ ‘แสดงผล’ ข้อมูลที่ต้องการอย่างถูกต้องและมีประสิทธิภาพ ถือเป็นหัวใจสำคัญที่สุดของงาน Database Administrator (DBA) หรือนักพัฒนาซอฟต์แวร์ การใช้คำสั่งที่เหมาะสมจะช่วยให้เราดึงข้อมูลที่ต้องการออกมาได้อย่างแม่นยำ
หากเปรียบเทียบการทำงานของระบบฐานข้อมูล PostgreSQL เหมือนการค้นหาหนังสือในห้องสมุดขนาดใหญ่ เราไม่สามารถแค่เดินดูทุกเล่มได้ แต่เราต้องใช้เครื่องมือและคำสั่งที่เฉพาะเจาะจงเพื่อจำกัดขอบเขตการค้นหาให้แคบลง นี่คือหลักการทำงานของคำสั่งหลักสามตัวใน PostgreSQL ที่ใช้ในการค้นหาและแสดงผลข้อมูล: SELECT, WHERE, และ LIKE
1. SELECT: การระบุสิ่งที่ต้องการแสดงผล (What to Display)
SELECT คือคำสั่งพื้นฐานที่สุด มีหน้าที่กำหนดว่าเราต้องการ ‘คอลัมน์’ (Columns) ใดบ้างจากตารางที่เรากำลังจะดู หากเราไม่ระบุอะไรเลย (ใช้ SELECT *) ระบบจะดึงข้อมูลทุกคอลัมน์ออกมา แต่ในทางปฏิบัติที่ดี เราควรระบุชื่อคอลัมน์ที่จำเป็นเท่านั้น
SQL
SELECT column_name_1, column_name_2 FROM table_name;
ตัวอย่าง: หากเราต้องการดูแค่ชื่อสินค้า (product_name) และราคา (price) จากตาราง Products
SQL
SELECT product_name, price FROM products;
2. WHERE: การกรองเงื่อนไข (Filtering Data)
เมื่อเราทราบแล้วว่าต้องการดูคอลัมน์อะไร WHERE จะเข้ามาทำหน้าที่เป็น ‘ตัวกรอง’ (Filter) เพื่อจำกัดแถวข้อมูล (Rows) ให้เหลือเฉพาะข้อมูลที่ตรงตามเงื่อนไขที่เรากำหนดเท่านั้น เงื่อนไขนี้อาจจะเป็นการเปรียบเทียบค่าตัวเลข (=), การเปรียบเทียบข้อความ (>, <), หรือการใช้ตัวดำเนินการตรรกะ (AND, OR)
SQL
SELECT * FROM table_name WHERE condition;
ตัวอย่าง: ต้องการดูเฉพาะสินค้าที่มีราคามากกว่า 500 บาท
SQL
SELECT * FROM products WHERE price > 500;
3. LIKE: การค้นหาแบบ Pattern Matching (Advanced Finding)
หากเราไม่รู้ค่าที่แน่นอน แต่รู้เพียงแค่ 'รูปแบบ' (Pattern) ของข้อมูล เช่น ต้องการหาชื่อสินค้าที่ขึ้นต้นด้วยคำว่า 'Apple' หรือมีคำว่า 'Orange' อยู่ที่ใดก็ได้ LIKE คือคำสั่งที่ทรงพลังที่สุดในการค้นหาแบบนี้ โดยใช้ Wildcard คือ % (แทนอักขระใด ๆ กี่ตัวก็ได้) และ _ (แทนอักขระเดียว)
SQL
SELECT * FROM table_name WHERE column_name LIKE 'pattern';
ตัวอย่าง: ต้องการค้นหาสินค้าที่มีชื่อที่ส่วนใดส่วนหนึ่งมีคำว่า 'orange' อยู่
SQL
SELECT * FROM products WHERE product_name LIKE '%orange%';
บทสรุป
การรวมกันของ SELECT, WHERE, และ LIKE ทำให้เราสามารถควบคุมการดึงข้อมูลใน PostgreSQL ได้อย่างสมบูรณ์แบบ การเข้าใจหลักการเหล่านี้ไม่เพียงแต่ช่วยให้เราดึงข้อมูลได้เท่านั้น แต่ยังช่วยให้เราเขียน Query ที่มีประสิทธิภาพสูง ลดภาระงานของเซิร์ฟเวอร์ และทำให้แอปพลิเคชันของเราทำงานได้อย่างรวดเร็วและเสถียรที่สุด การฝึกฝนการใช้คำสั่งเหล่านี้อย่างสม่ำเสมอคือทักษะที่สำคัญที่สุดสำหรับผู้ที่ทำงานกับฐานข้อมูลระดับ Senior Architect ครับ