Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL
MySQL
  1. หาอายุสูงสุดของนักเรียนที่ชื่อซ้ำกันใน MySQL

    การหาค่าสูงสุด (MAX) แยกตามกลุ่มชื่อ ใช้ GROUP BY StudentName ร่วมกับฟังก์ชันรวม MAX(StudentAge) สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1964 ( -> StudentName VARCHAR(20), -> StudentAge INT -> ); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO DemoTa

  2. ค้นหาคอลัมน์ว่ามีอยู่ในตารางไหนบ้างใน MySQL

    การค้นหาชื่อคอลัมน์ในทุกตารางของฐานข้อมูลปัจจุบัน Query INFORMATION_SCHEMA.COLUMNS กรองด้วย table_schema = SCHEMA() และชื่อคอลัมน์ที่ต้องการ รูปแบบคำสั่ง SELECT table_name, column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE table_schema = SCHEMA() AND column_name = anyColumnName; ตัวอย่าง: ค้นหาคอ

  3. ใช้เงื่อนไข IF/ELSE ในคำสั่ง SELECT ของ MySQL

    การใช้ฟังก์ชัน IF() ภายใน SELECT IF(condition, value_if_true, value_if_false) คืนค่าตามเงื่อนไข ใช้ได้ใน SELECT, WHERE, ORDER BY สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1966 ( -> UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserName VARCHAR(20), -> PhotoLi

  4. เพิ่มข้อมูลพร้อมเลขลำดับนำหน้าศูนย์ใน MySQL ด้วย LPAD

    การสร้างรหัสอัตโนมัติแบบมีเลขศูนย์นำหน้า (001, 002, ...) ใช้ INSERT INTO ... SELECT ร่วมกับ LPAD() และ COALESCE(MAX(id),0)+1 เพื่อสร้างเลขต่อเนื่อง สร้างตาราง mysql> CREATE TABLE DemoTable1967 ( -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserId VARCHAR(20) -> ); Query

  5. ตั้งค่า NOT NULL ให้คอลัมน์ที่มีอยู่แล้วใน MySQL

    การเปลี่ยนคอลัมน์ให้ไม่รับค่า NULL ด้วย ALTER TABLE ใช้ ALTER TABLE ... MODIFY column_name datatype NOT NULL ต้องแน่ใจว่าข้อมูลเดิมไม่มีค่า NULL สร้างตาราง mysql> CREATE TABLE DemoTable1949 (UserId INT, UserName VARCHAR(20)); Query OK, 0 rows affected (0.00 sec) เปลี่ยนคอลัมน์ UserName เป็น NOT

  6. รวม SUM และ FORMAT เพื่อจัดรูปแบบผลรวมใน MySQL

    การคำนวณผลรวมและจัดรูปแบบตัวเลขพร้อมกัน ใช้ FORMAT(SUM(column), decimals) เพื่อบวกค่าแล้วจัดรูปแบบทศนิยมและคอมม่าหลักพัน สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1950 (Amount FLOAT); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO DemoTable1950 VALUES(45.60); mysql> IN

  7. แยกส่วนจำนวนเต็มและทศนิยมของคอลัมน์ FLOAT ใน MySQL

    การแยกตัวเลขก่อนและหลังจุดทศนิยม ใช้ SUBSTRING_INDEX() แยกสตริงด้วยตัวคั่น . แล้วแปลงเป็นตัวเลขด้วย CAST(... AS UNSIGNED) สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1951 (Value1 VARCHAR(20)); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO DemoTable1951 VALUES(100.50); mysq

  8. ตั้งค่าข้อความตามเกณฑ์คะแนนนักเรียนใน MySQL ด้วย CASE

    การจัดเกรดหรือแสดงข้อความตามช่วงคะแนน ใช้ CASE WHEN ... THEN ... ELSE ... END เพื่อกำหนดเงื่อนไขหลายระดับ สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1952 (Marks INT); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO DemoTable1952 VALUES(35); mysql> INSERT INTO DemoTable19

  9. แสดงข้อความกำหนดเองตามค่า NULL ในคอลัมน์ MySQL

    การสร้างคอลัมน์ใหม่แสดงข้อความตามเงื่อนไข NULL ใช้ฟังก์ชัน IF() หรือ CASE เพื่อตรวจสอบค่า NULL แล้วแสดงข้อความที่ต้องการ สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1953 (StudentName VARCHAR(20)); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO DemoTable1953 VALUES(Chris); m

  10. ดึงชื่อวันจากวันที่ใน MySQL ด้วย DAYNAME()

    การแสดงชื่อวัน (วันจันทร์, วันอังคาร, ...) จากคอลัมน์ DATE ใช้ฟังก์ชัน DAYNAME() ซึ่งคืนค่าชื่อวันเป็นภาษาอังกฤษ สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1954 (ShippingDate DATE); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO DemoTable1954 VALUES(2019-12-15); mysql>

  11. แก้ไข Auto Increment หลังลบแถว ให้เรียงต่อ 1,2,3 ใน MySQL

    การรีเซ็ตลำดับ Auto Increment หลังลบแถว เมื่อลบแถวทำให้ ID ข้ามกัน (เช่น 1,3,5) สามารถอัปเดตค่า ID ใหม่เรียงต่อกันได้ด้วยตัวแปรผู้ใช้ (User-defined variable) สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1955 ( -> UserId INT NOT NULL AUTO_INCREMENT, -> PRIMARY KEY(UserId)

  12. เลือกข้อมูลตามวันที่ปัจจุบันและวันพรุ่งนี้ใน MySQL

    การกรองข้อมูลตามช่วงวันที่: วันนี้และพรุ่งนี้ ใช้ CURDATE() และ CURDATE() + INTERVAL 1 DAY ร่วมกับ IN เพื่อดึงระเบียนที่ตรงกับวันที่จัดส่ง ตรวจสอบวันที่ปัจจุบัน mysql> SELECT CURDATE(); +------------+ | curdate() | +------------+ | 2019-12-15 | +------------+ สร้างตารางและเพิ่มข้อมูล mysql>

  13. คำนวณเงินเดือนรายเดือนจากเงินเดือนรายปีใน MySQL

    การหารคอลัมน์เงินเดือนรายปีเพื่อหาเงินเดือนรายเดือน เพียงหารคอลัมน์ EmployeeSalary ด้วย 12 และตั้งชื่ออีเลียส (Alias) เป็น MonthlySalary สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1957 ( -> EmployeeId INT, -> EmployeeName VARCHAR(20), -> EmployeeSalary INT ->

  14. ตั้งค่า Auto Increment เริ่มต้นที่ 001 พร้อมเลขศูนย์นำหน้าใน MySQL

    การแสดง Auto Increment แบบมีเลขศูนย์นำหน้า (Zero-fill) ใช้ ZEROFILL ร่วมกับ UNSIGNED และกำหนดความกว้างตัวเลข เช่น INT(3) แล้วเปลี่ยนคอลัมน์เป็น PRIMARY KEY AUTO_INCREMENT รูปแบบคำสั่ง ALTER TABLE ALTER TABLE yourTableName CHANGE yourColumnName yourColumnName INT(3) UNSIGNED ZEROFILL NOT NULL AUTO_IN

  15. เรียงลำดับ ASC และวางค่า NULL ไว้ท้ายสุดใน MySQL

    การจัดลำดับข้อมูลพร้อมวาง NULL และค่าว่างไว้ท้าย ใช้ CASE ภายใน ORDER BY NULL สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1937 (Name VARCHAR(20)); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO DemoTable1937 VALUES(Chris); mysql> INSERT INTO DemoTable1937 VALUES(NULL); m

  16. แสดงชื่อคอลัมน์ทั้งหมดของตารางใน MySQL

    การแสดงรายชื่อฟิลด์ (Columns) ของตาราง ใช้ INFORMATION_SCHEMA.COLUMNS กรองด้วย table_schema (ฐานข้อมูลปัจจุบัน) และ table_name รูปแบบคำสั่ง SELECT column_name AS anyAliasName FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = yourTableName\G ตัวอย่าง: สร้างตารางและแส

  17. ดึงข้อความทางซ้ายของช่องว่างสุดท้ายในคอลัมน์ชื่อเต็ม MySQL

    การดึงส่วนแรกของชื่อ (First Name) จากชื่อเต็ม ใช้ฟังก์ชัน LEFT() ร่วมกับ LENGTH(), LOCATE() และ REVERSE() เพื่อหาตำแหน่งช่องว่างสุดท้าย แล้วตัดข้อความทางซ้าย สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1939 (FullName VARCHAR(20)); Query OK, 0 rows affected (0.00 sec) mysql> INSERT I

  18. คืนค่าฟิลด์ที่มีจำนวนมากที่สุดใน MySQL

    การคืนค่าฟิลด์ที่มีจำนวนมากที่สุด เพื่อคืนค่าฟิลด์ที่มีจำนวนมากที่สุด ให้ใช้ ORDER BY COUNT(*) ร่วมกับ GROUP BY และ LIMIT 1 มาสร้างตารางตัวอย่างก่อน สร้างตารางและเพิ่มข้อมูล mysql> CREATE TABLE DemoTable1940 (FirstName VARCHAR(20)); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO Demo

  19. นับจำนวนครั้งที่ข้อมูลซ้ำใน MySQL แสดงผลในคอลัมน์ใหม่ด้วย COUNT และ GROUP BY

    ใช้ COUNT(*) ร่วม GROUP BY คอลัมน์ เพื่อนับความถี่ของแต่ละค่า แล้วแสดงเป็นคอลัมน์เพิ่มเติม ตัวอย่างการใช้งาน สร้างตารางค่า: mysql> create table DemoTable1942 (Value int); เพิ่มข้อมูล (มีค่าซ้ำ): mysql> insert into DemoTable1942 values(1),(2),(3),(2),(3),(3),(1); ดูข้อมูลดิบ: mysql> selec

  20. ค้นหาฐานข้อมูล MySQL ที่ชื่อมีตัวพิมพ์ใหญ่หลังคำหนดด้วย REGEXP

    ใช้ REGEXP กับ information_schema.schemata เพื่อกรองชื่อฐานข้อมูลที่ตรงรูปแบบ (Pattern) รูปแบบคำสั่ง SELECT * FROM information_schema.schemata WHERE SCHEMA_NAME REGEXP ^yourPrefix_+[A-Z]; ตัวอย่างการใช้งาน สร้างฐานข้อมูลทดสอบ: mysql> create database bank_APP1; mysql> create database bank_AP

Total 4564 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:18/229  20-คอมพิวเตอร์/Page Goto:1 12 13 14 15 16 17 18 19 20 21 22 23 24