SQL คืออะไร? และ NOSQL คืออะไร?

Todsphol Wonhchomphu
2 min readDec 30, 2017

--

สวัสดีครับ วันนี้ผมจะมาพูดถึงการใช้ฐานข้อมูลแบบ SQL และแบบไม่ใช่ SQL อย่างแรกเรามาพูดถึง ฐานข้อมูลที่เป็น SQL กันก่อนว่าเป็นยังไง

SQL ย่อมาจาก Structured Query Language คือเป็นภาษาที่สามารถเข้าฐานข้อมูลโดยเป็นภาษาที่เอาไว้จัดการข้อมูลที่อยู่ใน Relational Database Management System (RDBMS) ก็คือไม่ว่าจะ เก็บ ดึง ลบ หรือ อัพเดทข้อมูลอะไรเข้าไปในฐานข้อมูลก็ตาม ข้อมูลที่ถูกเก็บอยู่ในฐานข้อมูลในรูปแบบตารางที่มีลักษณะเป็น column และ row และโครงสร้าง Database ใน SQL ก็จะเป็น Table ทีมี Field และ Record โดยจะมีลักษณะเป็นหัวข้อกับข้อมูลในแต่ละหัวข้อ

ในภาพประกอบก็จะบอกว่าในหนึ่ง Table จะมีโครงสร้างที่ประกอบด้วย Field ที่เป็นหัวข้อของข้อมูล ส่วน Record จะเป็นข้อมูลที่อยู่ใน Field นั้นเองโดย SQL จะมีึคำสั่งอยู่ 4 คำสั่งคือ

1.Select query ใช้สำหรับดึงข้อมูลที่ต้องการ
2.Update query ใช้สำหรับแก้ไขข้อมูล
3.Insert query ใช้สำหรับการเพิ่มข้อมูล
4.Delete query ใช้สำหรับลบข้อมูลออกไป

ตัวอย่างเช่น

ให้แสดงข้อมูลนักศึกษาที่มีชื่อขึ้นต้นด้วย ป. โดยใช้ภาษา SQL ในการดึงข้อมูลจากฐานข้อมูล

ซอฟต์แวร์ระบบจัดการฐานข้อมูล(DBMS) ที่สนับสนุนการใช้คำสั่ง SQL เช่น Oracle , DB2, MS-SQL, MS-Access เป็นต้น

ส่วนของ NOSQL

NOSQL ย่อมาจาก Not Only SQL คือ เป็น Unstrcuture ของ Database แบบ SQL มันเป็นแนวทางการแก้ไขปัญหาของ Database ที่มีข้อมูลขนาดใหญ่และไม่มีรูปแบบที่ชัดเจน โดยไม่จำเป็นต้องเก็บข้อมูลแบบ Table เดียวที่มีต้องข้อมูลเหมือนกันทั้งหมดในหนึ่ง Table แต่สามารถจัดเก็บข้อมูลแบบได้หลายรูปแบบ

ยกตัวอย่างเช่น

สมมุติผมใช้ Table เดิมใน Database ของ SQL แต่มีการเพิ่ม Student คนที่ 8 ขึ้นมา ชื่อว่า เมย์ แต่อยากเก็บข้อมูลแค่ส่วนสูงและอายุของเมย์เท่านั้น Table ที่ได้จะออกมาเป็นแบบนี้

นี้คือตัวอย่าง Table แบบ SQL ที่ต้องใส่ค่า null ไม่จำเป็นลงใน Database ทำให้เสียพื้นที่ในฐานข้อมูล และถ้าเอามาทำเป็น NOSQL ละ Table ที่ได้ก็จะแยกออกมาเป็น 2 Table คือ

และส่วนของ เมย์

โดยการจัดเก็บข้อมูลแบบ NOSQL ไม่จำเป็นต้องอยู่ Table เดียวกันแต่สามารถดึง ลบ แก้ไข หรือแทรกเข้าไปในฐานข้อมูลเหมือนกับ Database แบบ SQL เลยก็ว่าได้

โดยการจัดหมวดหมู่ของ NoSQL ประกอบไปด้วย 4 หมวด และแต่ละหมวด Software ตัวไหน Popular ที่สุดในหมวดหมู่นั้น รูปภาพจากเว็ปไซต์ www.g2crowd.com

  1. Document

2. Graph

3. Key-Value

4. Object-Oriented

ก็จบแล้วสำหรับเรื่อง SQL และ NOSQL ถ้ามีผู้รู้เข้ามาอ่านแล้วมันไม่ถูกยังไงก็ Comment ไว้ที่ Blog นี้ได้นะครับ ขอบคุณครับ ^^

--

--