What is SQL?

SQL (Structure Query Language) ภาษาสำหรับจัดการข้อมูลที่มีโครงสร้าง โดยภาษานี้จะใช้จัดการข้อมูลให้อยู่ในรูปแบบตารางมี Columns สำหรับบอกประเภทของข้อมูล และมี Rows ในการแสดงข้อมูล ซึ่ง Structured Data คือข้อมูลที่ถูกเก็บอย่างมีระบบสามารถเรียกดูเรียกใช้งานได้สะดวกนั่นเอง (มักจะเป็นตักอักษร ตัวเลข ข้อความที่ไม่ยาว ประโยคต่าง ๆ ที่ถูกเก็บในลักษณะ Rows และ Columns) และแหล่งที่มาของข้อมูลจำพวกนี้มักหาได้จาก

  • Website (Web scraping, ข้อมูลการใช้งาน Web app จากผู้ใช้)
  • Mobile (ข้อมูลการใช้งาน app หรือผ่านทาง APIs ต่าง ๆ)
  • Enterprise (จัดการข้อมูลภายในองค์กร หรือข้อมูลจากหน่วยงานต่าง ๆ)
  • Data Mart (แหล่งข้อมูลที่ถูกจัดมาให้เหมาะแก่การหยิบไปใช้งานทันที)

Starting MySQL

โปรแกรมที่จะใช้ในการเขียนนั้นสามารถเลือกอะไรก็ได้ แต่ในบทความนี้ขอแนะนำ MySQL (ใช้งานไม่ยาก มีความน่าเชื่อถือ มี tutorial ให้ศึกษามากมาย) ขั้นแรกให้ติดตั้งโปรแกรมก่อนโดยโหลดได้ที่นี่ MySQL Download for windows, MySQL Download for other OS สามารถดาวน์โหลดได้โดยไม่ต้องสมัครสมาชิก และไม่มีค่าใช้จ่ายใด ๆ เมื่อดาวน์โหลดเสร็จแล้วให้เปิด MySQL Installer ขึ้นมาแล้วจะเจอกับขั้นตอนต่าง ๆ ดังนี้

  • Choosing a Setup type ให้เลือก Developer Default ซึ่งจะเป็นการติดตั้งทุกแพคเกจที่จำเป็นในการทำงาน
  • Check Requirements คลิกที่ Execute ได้เลย จากนั้นจะเด้งหน้าต่างให้ยินยอม license & term ก็ทำการยินยอมให้เรียบร้อย
  • เมื่อขึ้นหน้า Setup ให้ยินยอมอีกรอบแล้วทำการคลิก Install
  • รอจนกระทั่งติดตั้ง package เสร็จสิ้นแล้วกด finish
  • หากมี package ไหนที่ไม่ต้องสามารถ deselect ได้ จากนั้นกด Next ได้เลย
  • Installation หน้านี้ให้กด Execute และรอจนกว่าจะขึ้นเครื่องถูกสีเขียวครบทุกแพคเกจ
  • กด Next ต่อไปเรื่อย ๆ หรือถ้าต้องการปรับตรงไหนก็ลองอ่านแล้วเลือกดูได้
  • Account and Roles ให้ตั้ง password สำหรับเข้าใช้งาน MySQL และไปกดที่ Add user ให้ทำการตั้ง username และ role ที่ต้องการให้เรียบร้อยแล้วกรอก password ที่ตั้งไว้ก่อนหน้านี้ลงไป
  • Windows Service กด Next
  • Apply configuration กด execute และรอจนเสร็จก็กด Finish
  • Product Configuration กด Next จากนั้นถ้าไม่ปรับใด ๆ ก็กด Finish ได้เลย
  • กด Next และ Finish เป็นอันเรียบร้อย

หลังจากติดตั้งเรียบร้อยให้เปิด MySQL 8.x Command line Client (8.x คือเลขเวอร์ชั่น) แล้วใส่ password ที่ได้ตั้งเอาไว้เพื่อเข้าระบบให้เรียบร้อย

Command and Syntax

ใน SQL แบ่งประเภทคำสั่งออกเป็น 4 ประเภทหลัก ๆ ได้แก่

  • DDL (Data Definition Language) สร้าง ลบ แก้ไข Database และ Table
    Example:
    create database blogpost;
    show databases;
    use blogpost;
    create table post_1(title VARCHAR(50), meta CHAR(50), pubilsh DATE); *จงใจพิมพ์ผิดจะได้ลองใช้ alter แก้ไข
    Alter table post_1 Rename Column pubilsh to publish;
    นอกจากนี้ยังมี Drop Truncate Comment ในหมวดหมู่ DDL อีกด้วย
  • DML (Data Manipulation Language) เพิ่ม ลบ แก้ไข เลือกดูข้อมูลจากตารางต่าง ๆ
    insert into post_1 values(‘Writing SQL’, ‘Install Command and Syntax’, ‘2020-08-15’); *กรอกให้ตรงตามคอลัมน์ที่เราสร้าง
    select*from post_1;
    update post_1 set title=’Easy SQL’ where title=’Writing SQL’;
    ที่เหลือจะมี Delete ที่ได้ใช้บ่อย ๆ และอื่น ๆ อย่าง Merge, Call, Explain Plan, Lock table เป็นต้น
  • Data Control Language (DCL)
    GRANT ให้สิทธิ์ในการเข้าถึง database แก่ user
    REVOKE – นำสิทธิ์ที่ให้แก่ user ออก
  • Transaction Control Language (TCL)
    COMMIT – เซฟงานที่เสร็จแล้ว
    ROLLBACK – restore database ไปยังจดเซฟ หรือ commit ล่าสุด
    SAVEPOINT – สร้างจุดเซฟสำหรับไว้ rollback ข้อมูล
    SET TRANSACTION

Conclusion

SQL เป็นภาษาจัดการกับข้อมูลให้อยู่ในลักษณะของ Structured Data สามารถเรียกดูและนำไปใช้งานวิเคราะห์ข้อมูลได้ง่ายขึ้น Command หลัก ๆ มี 4 ประเภท DDL, DML, DCL, TCL และ Syntax หลัก ๆ คือต้องมี ; (semicolon) ต่อท้ายในทุก line นอกจากนี้การเขียนโค้ดจะพิมพ์เล็กหรือพิมพ์ใหญ่ก็ได้สำหรับภาษานี้ อ่านบทความอื่นได้ที่ SBC-Blog เเละ Facebook page Subbrain

ติดตาม SUBBRAIN ได้ที่นี่

Categories: Data&IT