メインコンテンツへ移動

MySQL ฉบับเริ่มต้น: สร้างฐานข้อมูลและตารางอย่างมืออาชีพ

เรียนรู้ MySQL ตั้งแต่พื้นฐาน เริ่มจากการทำความเข้าใจหลักการทำงานของฐานข้อมูลเชิงสัมพันธ์ การติดตั้งบนระบบปฏิบัติการต่างๆ ไปจนถึงการสร้างฐานข้อมูลและตารางอย่างถูกต้องตามหลักการ ในบทเรียนนี้ คุณจะได้รู้จักกับคำสั่ง SQL ที่สำคัญ เช่น CREATE DATABASE, USE DATABASE, CREATE TABLE, Data Types, Primary Key และ Foreign Key พร้อมตัวอย่างการใช้งานจริงที่จะช่วยให้คุณเริ่มต้นใช้งาน MySQL ได้อย่างมั่นใจ

เริ่มต้น 50 本の短い記事

เนื้อหาภาษาไทย / タイ語のコンテンツ

レッスン目次(Roadmap)

上から順に進めてください
1

MySQL คืออะไร ทำไมถึงต้องใช้?

บทความนี้เป็นการแนะนำ MySQL ซึ่งเป็นระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) ที่ได้รับความนิยม โดยอธิบายถึงแนวคิดพื้นฐานของฐานข้อมูลเชิงสัมพันธ์, คุณสมบัติเด่นขอ...

2

การติดตั้ง MySQL บน Windows

บทความนี้อธิบายขั้นตอนการติดตั้ง MySQL บน Windows โดยใช้ MySQL Installer ซึ่งแนะนำให้ดาวน์โหลดตัวติดตั้งแบบสมบูรณ์ (MySQL Installer for Windows) และเลือก "Devel...

3

การติดตั้ง MySQL บน macOS

บทความนี้อธิบายวิธีการติดตั้ง MySQL บน macOS โดยมีสองวิธีหลักคือการใช้ Homebrew ซึ่งเป็น package manager ยอดนิยม และการดาวน์โหลดไฟล์ DMG จากเว็บไซต์ MySQL อย่าง...

4

การติดตั้ง MySQL บน Linux

บทความนี้อธิบายวิธีการติดตั้ง MySQL บน Linux โดยเน้นที่ Ubuntu (ใช้ `apt-get`) และ CentOS/RHEL (ใช้ `yum`) รวมถึงขั้นตอนการตั้งค่า password ให้กับ root user และ...

6

การใช้งาน MySQL Workbench เบื้องต้น

บทนี้แนะนำ MySQL Workbench ซึ่งเป็นเครื่องมือ GUI ที่ช่วยให้การจัดการฐานข้อมูล MySQL ง่ายขึ้น โดยผู้ใช้สามารถสร้าง Connection เพื่อเชื่อมต่อกับ MySQL Server, เข...

7

การสร้างฐานข้อมูล (CREATE DATABASE)

บทนี้อธิบายวิธีการสร้างฐานข้อมูลใหม่ใน MySQL โดยใช้คำสั่ง `CREATE DATABASE` ซึ่งรวมถึงการกำหนดชื่อ, character set (เช่น UTF8), และ collation เพื่อรองรับข้อมูลภา...

8

การเลือกฐานข้อมูล (USE DATABASE)

บทนี้กล่าวถึงคำสั่ง `USE DATABASE` ซึ่งใช้สำหรับเลือกฐานข้อมูลที่เราต้องการใช้งานใน MySQL โดยการเลือกฐานข้อมูลมีความสำคัญเพื่อระบุเป้าหมาย ป้องกันข้อผิดพลาด และ...

9

การสร้างตาราง (CREATE TABLE)

บทนี้เป็นการแนะนำคำสั่ง `CREATE TABLE` ซึ่งเป็นคำสั่งพื้นฐานในการสร้างตารางในฐานข้อมูล MySQL โดยตารางประกอบด้วยคอลัมน์ที่ต้องกำหนดชื่อ, ประเภทข้อมูล (Data Type)...

10

Data Types ใน MySQL

บทความนี้กล่าวถึง Data Types พื้นฐานใน MySQL ซึ่งมีความสำคัญต่อการสร้างตารางและจัดเก็บข้อมูลอย่างมีประสิทธิภาพ โดยเน้นที่ชนิดข้อมูล `INT`, `VARCHAR`, `TEXT`, `D...

11

Primary Key คืออะไร?

บทความนี้อธิบายว่า Primary Key คืออะไร, ทำไมถึงสำคัญ, และวิธีการใช้งานใน MySQL โดย Primary Key คือคอลัมน์ที่ใช้ระบุแต่ละแถวในตารางอย่างไม่ซ้ำกัน, ป้องกันข้อมูลซ...

12

Foreign Key คืออะไร?

บทความนี้อธิบายถึง Foreign Key ซึ่งเป็นคอลัมน์ที่เชื่อมโยงข้อมูลระหว่างตารางโดยอ้างอิงไปยัง Primary Key ของอีกตารางหนึ่ง โดยมีประโยชน์ในการเชื่อมโยงข้อมูล, รักษ...

13

การเพิ่มข้อมูล (INSERT INTO)

บทความนี้อธิบายวิธีการเพิ่มข้อมูลลงในตาราง MySQL ด้วยคำสั่ง `INSERT INTO` โดยครอบคลุมรูปแบบคำสั่งพื้นฐาน, การระบุหรือไม่ระบุชื่อคอลัมน์, การเพิ่มข้อมูลหลายแถวพร...

14

การอ่านข้อมูล (SELECT)

บทนี้เป็นการแนะนำคำสั่ง `SELECT` ซึ่งเป็นคำสั่งพื้นฐานในการดึงข้อมูลจากฐานข้อมูล MySQL โดยครอบคลุมการใช้งาน `SELECT *` เพื่อดึงข้อมูลทั้งหมดจากตาราง และการเลือก...

15

Clause WHERE คืออะไร?

บทความนี้อธิบายถึง `WHERE` Clause ซึ่งเป็นส่วนสำคัญของคำสั่ง `SELECT` ใน SQL ที่ใช้ในการกรองข้อมูลตามเงื่อนไขที่กำหนด โดยเงื่อนไขเหล่านี้จะประกอบด้วยชื่อคอลัมน์...

16

Operators ใน WHERE Clause

บทความนี้อธิบายถึง Operators พื้นฐานที่ใช้ใน `WHERE` Clause ของ MySQL เพื่อเปรียบเทียบค่าในคอลัมน์กับค่าที่กำหนด เช่น เท่ากับ (=), มากกว่า (>), น้อยกว่า (<), แล...

17

การแก้ไขข้อมูล (UPDATE)

บทความนี้สอนการแก้ไขข้อมูลในตาราง MySQL ด้วยคำสั่ง `UPDATE` ซึ่งประกอบด้วยการระบุตาราง, คอลัมน์ที่ต้องการแก้ไขพร้อมค่าใหม่ และเงื่อนไข `WHERE` เพื่อเลือกแถวที่ต...

18

การลบข้อมูล (DELETE)

บทนี้กล่าวถึงการใช้คำสั่ง `DELETE` ใน MySQL เพื่อลบข้อมูลออกจากตาราง โดยเน้นย้ำถึงความสำคัญของการใช้ `WHERE` Clause เพื่อระบุเงื่อนไขการลบข้อมูลเฉพาะแถวที่ต้องก...

19

Clause ORDER BY คืออะไร?

บทนี้กล่าวถึงการใช้ `ORDER BY` Clause ใน SQL เพื่อเรียงลำดับผลลัพธ์ของการ Query ข้อมูลจากตารางตามคอลัมน์ที่กำหนด โดยสามารถเรียงจากน้อยไปมาก (ASC) หรือจากมากไปน้...

20

Clause LIMIT คืออะไร?

บทความนี้อธิบายการใช้งาน `LIMIT` Clause ใน SQL เพื่อจำกัดจำนวนแถวที่แสดงผลจากการ Query ซึ่งมีประโยชน์ในการจัดการข้อมูลจำนวนมากและการสร้างระบบ pagination โดย `LI...

21

Clause LIKE คืออะไร?

บทความนี้อธิบายถึง `LIKE` Clause ใน SQL ซึ่งใช้สำหรับการค้นหาข้อมูลโดยอาศัยรูปแบบ (pattern matching) ร่วมกับ Wildcard Characters อย่าง `%` (แทนตัวอักษรใดๆ ก็ได้...

22

Clause IN คืออะไร?

บทความนี้ได้แนะนำ `IN` Clause ใน MySQL ซึ่งเป็นส่วนหนึ่งของ `WHERE` Clause ที่ใช้ตรวจสอบว่าค่าในคอลัมน์ตรงกับค่าใดค่าหนึ่งในชุดข้อมูลที่กำหนดหรือไม่ ทำให้การเขี...

23

Clause BETWEEN คืออะไร?

บทความนี้อธิบายการใช้งาน `BETWEEN` Clause ใน SQL เพื่อกรองข้อมูลที่อยู่ในช่วงที่กำหนด ทั้งกับข้อมูลตัวเลขและวันที่ โดย `BETWEEN` Clause จะรวมค่าขอบเขตที่กำหนดไว...

24

ฟังก์ชัน COUNT() คืออะไร?

บทความนี้อธิบายการใช้งานฟังก์ชัน `COUNT()` ใน SQL ซึ่งเป็นฟังก์ชันสำหรับนับจำนวนแถวในตาราง โดยมีสองรูปแบบหลักคือ `COUNT(*)` ที่นับทุกแถว และ `COUNT(column_name)...

25

ฟังก์ชัน SUM() คืออะไร?

บทความนี้แนะนำฟังก์ชัน `SUM()` ใน MySQL ซึ่งใช้สำหรับหาผลรวมของค่าในคอลัมน์ที่เป็นตัวเลข โดยสามารถใช้ร่วมกับ `GROUP BY` เพื่อหาผลรวมตามกลุ่มข้อมูลต่างๆ ได้ ฟังก...

26

ฟังก์ชัน AVG() คืออะไร?

บทความนี้อธิบายถึงฟังก์ชัน `AVG()` ใน MySQL ซึ่งใช้ในการคำนวณหาค่าเฉลี่ยของข้อมูลตัวเลขในคอลัมน์ที่ระบุ โดยจะละเว้นค่า `NULL` และสามารถใช้ร่วมกับ `WHERE` clause...

27

ฟังก์ชัน MIN() และ MAX() คืออะไร?

บทความนี้แนะนำฟังก์ชัน `MIN()` และ `MAX()` ใน MySQL ซึ่งใช้สำหรับหาค่าที่น้อยที่สุดและมากที่สุดในคอลัมน์ที่กำหนด โดยสามารถใช้ร่วมกับ `WHERE` clause เพื่อกรองข้อ...

28

Clause GROUP BY คืออะไร?

บทความนี้อธิบายการใช้งาน `GROUP BY` clause ใน MySQL ซึ่งใช้เพื่อจัดกลุ่มแถวที่มีค่าเหมือนกันในคอลัมน์ที่ระบุ ทำให้สามารถใช้ Aggregate Functions เพื่อคำนวณค่าต่า...

29

Clause HAVING คืออะไร?

บทความนี้อธิบายการใช้งาน `HAVING` clause ใน MySQL ซึ่งใช้สำหรับกรองข้อมูล *หลังจาก* ที่ได้ทำการจัดกลุ่มด้วย `GROUP BY` clause แล้ว โดย `HAVING` ทำงานคล้ายกับ `W...

30

การ JOIN ตารางคืออะไร?

บทความนี้แนะนำการ `JOIN` ตารางใน MySQL ซึ่งเป็นวิธีการรวมข้อมูลจากหลายตารางที่เกี่ยวข้องกัน เพื่อลดความซ้ำซ้อนและดึงข้อมูลอย่างมีประสิทธิภาพ โดยเน้นที่ `INNER J...

32

LEFT JOIN คืออะไร?

บทความนี้อธิบายถึง `LEFT JOIN` ซึ่งเป็นการรวมข้อมูลจากสองตาราง โดยเลือกข้อมูลทั้งหมดจากตารางซ้ายและข้อมูลที่ตรงกันจากตารางขวา หากไม่มีข้อมูลที่ตรงกันในตารางขวา...

33

RIGHT JOIN คืออะไร?

บทความนี้อธิบายถึง `RIGHT JOIN` ใน SQL ซึ่งเป็นการรวมข้อมูลจากสองตาราง โดยเลือกข้อมูลทั้งหมดจากตารางทางด้านขวาและข้อมูลที่ตรงกันจากตารางทางด้านซ้ายเท่านั้น หากไ...

34

FULL OUTER JOIN คืออะไร?

บทความนี้อธิบายถึง `FULL OUTER JOIN` ซึ่งเป็นการรวมข้อมูลจากสองตารางโดยแสดงข้อมูลทั้งหมดจากทั้งสองตาราง ไม่ว่าจะมีข้อมูลที่ตรงกันหรือไม่ก็ตาม แม้ว่า MySQL จะไม่...

35

Subquery คืออะไร?

บทความนี้แนะนำ Subquery ซึ่งเป็น Query ย่อยที่ซ้อนอยู่ภายใน Query หลัก เพื่อดึงข้อมูลที่จำเป็นสำหรับการ Query หลัก ทำให้สามารถเขียน Query ที่ซับซ้อนและยืดหยุ่นไ...

36

Subquery ใน WHERE Clause

บทความนี้กล่าวถึงการใช้ Subquery ใน `WHERE` Clause เพื่อสร้างเงื่อนไขการกรองข้อมูลที่ซับซ้อนและยืดหยุ่นกว่าการใช้ค่าคงที่โดยตรง โดย Subquery สามารถใช้ร่วมกับ op...

37

Subquery ใน SELECT Clause

บทความนี้อธิบายถึงการใช้ Subquery ใน `SELECT` Clause ซึ่งเป็น Subquery ที่ใช้ดึงข้อมูลเพิ่มเติมที่เกี่ยวข้องกับแต่ละแถวจากตารางหลัก โดย Subquery นี้ต้องคืนค่าเพ...

38

Index คืออะไร?

บทความนี้แนะนำ Index ใน MySQL ซึ่งเป็นโครงสร้างข้อมูลที่ช่วยให้การค้นหาข้อมูลในตารางทำได้รวดเร็วยิ่งขึ้น โดยไม่ต้องสแกนทุกแถว อย่างไรก็ตาม การใช้ Index ก็มีข้อด...

39

การสร้าง Index (CREATE INDEX)

บทความนี้กล่าวถึงการสร้าง Index ใน MySQL ด้วยคำสั่ง `CREATE INDEX` โดยอธิบายรูปแบบคำสั่ง, การสร้าง Composite Index, หลักการเลือก Column ที่เหมาะสมสำหรับการสร้าง...

40

การลบ Index (DROP INDEX)

บทความนี้อธิบายถึงการใช้คำสั่ง `DROP INDEX` ใน MySQL เพื่อลบ Index ที่ไม่จำเป็นออกจากตาราง ซึ่งการจัดการ Index อย่างเหมาะสมเป็นสิ่งสำคัญต่อประสิทธิภาพของฐานข้อม...

41

View คืออะไร?

View ใน MySQL คือ "ตารางเสมือน" ที่ไม่ได้เก็บข้อมูลจริง แต่สร้างจากผลลัพธ์ของ Query ที่บันทึกไว้ ซึ่งช่วยลดความซับซ้อนของ Query ที่ใช้บ่อย และเพิ่มความปลอดภัยโด...

42

การสร้าง View (CREATE VIEW)

บทความนี้กล่าวถึงวิธีการสร้าง View ใน MySQL โดยใช้คำสั่ง `CREATE VIEW` พร้อมทั้งอธิบายไวยากรณ์, ตัวอย่างการสร้าง View อย่างง่ายและซับซ้อน, แนวทางการตั้งชื่อ Vie...

43

การแก้ไข View (ALTER VIEW)

บทความนี้อธิบายถึงการใช้คำสั่ง `ALTER VIEW` ใน MySQL เพื่อแก้ไขนิยามของ View ที่มีอยู่แล้ว ซึ่งช่วยให้ปรับปรุงโครงสร้างและประสิทธิภาพของ View ได้โดยไม่ต้องสร้าง...

44

การลบ View (DROP VIEW)

บทความนี้อธิบายถึงวิธีการลบ View ที่ไม่ต้องการออกจากฐานข้อมูล MySQL ด้วยคำสั่ง `DROP VIEW` รวมถึงข้อควรระวังเกี่ยวกับการจัดการ dependencies ของ View และการใช้ `...

45

Transaction คืออะไร?

บทความนี้อธิบายว่า Transaction คือหน่วยการทำงานที่ไม่สามารถแบ่งแยกได้ในฐานข้อมูล ซึ่งรับประกันว่าการดำเนินการทั้งหมดจะสำเร็จหรือไม่สำเร็จเลย เพื่อรักษาความสมบูร...

46

BEGIN TRANSACTION, COMMIT, ROLLBACK

บทความนี้อธิบายคำสั่ง SQL ที่ใช้จัดการ Transaction ใน MySQL ได้แก่ `BEGIN TRANSACTION`, `COMMIT` และ `ROLLBACK` ซึ่งช่วยให้การดำเนินการหลายคำสั่ง SQL เป็นหน่วยเ...

47

การจัดการ User และ Permissions

บทความนี้กล่าวถึงการจัดการ User และ Permissions ใน MySQL ซึ่งมีความสำคัญต่อความปลอดภัยของข้อมูล โดยอธิบายถึงวิธีการสร้าง User ด้วย `CREATE USER`, การให้สิทธิ์ด้...

48

การ Backup และ Restore ฐานข้อมูล

บทความนี้เน้นย้ำความสำคัญของการ Backup และ Restore ฐานข้อมูลเพื่อป้องกันการสูญหายของข้อมูลอันเนื่องมาจากเหตุการณ์ไม่คาดฝันต่างๆ โดยแนะนำเครื่องมือ `mysqldump` ส...

49

การ Optimize Query

ในบทที่แล้ว เราได้เรียนรู้เรื่องการสำรองและกู้คืนฐานข้อมูล MySQL สำหรับการป้องกันข้อมูลสูญหาย ในบทนี้ เราจะมาเรียนรู้เทคนิคการ Optimize Query เพื่อปรับปรุงประสิ...

50

การใช้งาน Stored Procedure เบื้องต้น

บทความนี้แนะนำ Stored Procedure ใน MySQL ซึ่งเป็นชุดคำสั่ง SQL ที่ถูกจัดเก็บไว้ในฐานข้อมูล ทำให้สามารถเรียกใช้งานได้ง่ายและมีประสิทธิภาพมากกว่าการส่ง SQL statem...