Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL
MySQL
  1. วิธีค้นหาแถวข้อมูลจากตาราง MySQL ที่มีค่าเป็นวันที่

    เข้าใจได้จากตัวอย่างใช้ข้อมูลจากตาราง detail_bday: mysql> SELECT * FROM detail_bday; +----+---------+------------+ | Sr | Name | Birth_Date | +----+---------+------------+ | 1 | Saurabh | 1990-05-12 | | 2 | Raman | 1993-06-11 | | 3 | Gaurav | 1984-01-17 | | 4 | Rahul | 1993-06-11 | +-

  2. MySQL คืนค่าอะไรเมื่อ Sub-query ใน SET ของ UPDATE ไม่คืนแถวใดๆ

    ในกรณีนี้ MySQL จะส่งค่า NULL ให้กับเงื่อนไข SET ตัวอย่างด้านล่างจะสาธิต: ตัวอย่าง mysql> SELECT * FROM student; +----+---------+-----------+ | Id | Name | grade | +----+---------+-----------+ | 1 | Rahul | Good | | 2 | Gaurav | Good | | 3 | Raman | Excellent | | 4 | Har

  3. วิธีเก็บสตริงความยาวคงที่และความยาวเปลี่ยนแปลงได้ในตาราง MySQL เดียวกัน

    CHAR ใช้เก็บสตริงความยาวคงที่ ส่วน VARCHAR ใช้เก็บสตริงความยาวเปลี่ยนแปลงได้ ดังนั้นจึงเก็บได้ทั้งสองประเภทในตารางเดียวกัน โดยประกาศคอลัมน์หนึ่งเป็น CHAR และอีกคอลัมน์เป็น VARCHAR ตัวอย่าง mysql> CREATE TABLE Employees(FirstName CHAR(10), LastName VARCHAR(10)); Query OK, 0 rows affected (0.64 sec

  4. ความแตกต่างระหว่าง SERIAL และ AUTO_INCREMENT ใน MySQL

    ใน MySQL SERIAL และ AUTO_INCREMENT ใช้กำหนดลำดับเป็นค่าเริ่มต้นของฟิลด์ แต่มันต่างกันในทางเทคนิค AUTO_INCREMENT รองรับชนิดข้อมูลตัวเลขทุกชนิด ยกเว้น BIT และ DECIMAL มีได้เพียงหนึ่งฟิลด์ต่อตาราง และลำดับที่เกิดจาก AUTO_INCREMENT ในตารางหนึ่งไม่สามารถใช้ในตารางอื่นได้ ต้องมีดัชนี UNIQUE บนฟิลด์เพื่อป้

  5. วิธีอัปเดตค่าคอลัมน์หลายแถวพร้อมกันด้วยคำสั่ง UPDATE เดียวใน MySQL

    ค่าคอลัมน์หลายแถวสามารถอัปเดตได้ในคำสั่ง UPDATE เดียว หากเงื่อนไขใน WHERE ตรงกับหลายแถว ในกรณีนี้ SET จะถูกนำไปใช้กับแถวที่ตรงเงื่อนไขทั้งหมด ตัวอย่าง สมมติมีตาราง tender ดังนี้: mysql> SELECT * FROM tender; +-----------+---------+------+ | tender_id | company | rate | +-----------+---------+----

  6. วิธีอัปเดตค่าในตาราง MySQL

    ใช้คำสั่ง UPDATE ร่วมกับ WHERE เพื่ออัปเดตค่าในแถวเดี่ยวหรือหลายแถว MySQL อัปเดตตามเงื่อนไขใน WHERE ตัวอย่าง: ในตาราง employee ต้องการเปลี่ยน name และ doj ของพนักงานที่ id = 1: mysql> UPDATE employee SET name = Gaurav, doj = 2010-02-01 WHERE id = 1; Query OK, 1 row affected (0.06 sec) Rows matche

  7. ใช้ FROM_UNIXTIME() คืนค่า datetime ในรูปแบบทัวเลข (numeric format) ใน MySQL

    เหมือนกับการแปลงค่าเวลา/วันเวลาเป็นจำนวนเต็มโดยการบวก 0 (+0) สามารถแปลงค่า datetime ที่ FROM_UNIXTIME() คืนมาเป็นรูปแบบทัวเลขได้ ตัวอย่าง: mysql> SELECT FROM_UNIXTIME(1555033470)+0 AS Date in Numeric Format; +------------------------+ | Date in Numeric Format | +------------------------+ | 201904

  8. วิธีใช้ฟังก์ชัน STR_TO_DATE(Column, '%input_format') ใน MySQL

    ฟังก์ชัน STR_TO_DATE() แปลงค่าสตริงเป็นค่า datetime ตามสตริงรูปแบบที่กำหนด ทั้งค่าสตริงและสตริงรูปแบบต้องส่งเป็นอาร์กิวเมนต์ รูปแบบคำสั่ง: STR_TO_DATE(string, format) string คือค่าสตริงที่ต้องการแปลงเป็น datetime และ format คือรูปแบบวันที่ที่กำหนด ตัวอย่างคืนค่าวันที่ถูกต้องจากสตริงและรูปแบบที่กำหนด

  9. วิธีกำหนดค่าเริ่มต้น (DEFAULT) ในคำสั่ง INSERT ของ MySQL

    ขณะสร้างตาราง หากคอลัมน์ใดถูกกำหนดค่าเริ่มต้น (default value) สามารถใช้คำสั่ง DEFAULT ในคำสั่ง INSERT เพื่อให้ MySQL ใช้ค่าเริ่มต้นนั้น ตัวอย่าง: สร้างตาราง employee พร้อมค่าเริ่มต้นของคอลัมน์ DOJ: mysql> CREATE TABLE employee(id INT, name VARCHAR(20), doj DATE DEFAULT 2005-01-01); Query OK, 0 ro

  10. MySQL คืนค่าอะไรเมื่อส่งสตริงที่ไม่ถูกต้องให้ STR_TO_DATE()

    หากส่งสตริงที่ไม่ถูกต้อง (invalid string) เป็นอาร์กิวเมนต์ให้ STR_TO_DATE() MySQL จะคืนค่า NULL พร้อมคำเตือน ตัวอย่าง: mysql> SELECT STR_TO_DATE(20173210, %Y%d%m); +-----------------------------------+ | STR_TO_DATE(20173210, %Y%d%m) | +-----------------------------------+ | NULL

  11. MySQL คืนค่าอะไรเมื่อสตริงรูปแบบไม่ตรงกับสตริงวันที่ใน STR_TO_DATE()

    หากสตริงรูปแบบ (format string) และสตริงวันที่ (date string) ไม่ตรงกัน MySQL จะคืนค่า NULL พร้อมคำเตือน ตัวอย่างด้านล่างช่วยอธิบาย: mysql> SELECT STR_TO_DATE(20172810, %Y,%d%m); +------------------------------------+ | STR_TO_DATE(20172810, %Y,%d%m) | +------------------------------------+ | NULL

  12. สร้างฟังก์ชัน MySQL คำนวณระยะเวลาเป็น ปี เดือน วัน ชั่วโมง นาที วินาที

    ฟังก์ชัน MySQL ต่อไปนี้คำนวณระยะเวลาในหน่วย ปี เดือน วัน ชั่วโมง นาที วินาที ระหว่างสองวันที่: RETURN CONCAT( ival, , clabel, IF(ival=1, , s ) ); // Query OK, 0 rows affected (0.00 sec) mysql> DELIMITER ; mysql> SELECT Duration(2000-08-04 06:09:46, 2011-07-01 05:05:36) AS Duration; +-------

  13. วิธีรวม GET_FORMAT() กับ DATE_FORMAT() และ STR_TO_DATE() ใน MySQL

    การรวม GET_FORMAT() กับ DATE_FORMAT() และ STR_TO_DATE() มีประโยชน์มาก รวมกับ DATE_FORMAT() เมื่อรวมกับ DATE_FORMAT() จะจัดรูปแบบวันที่/เวลา/วันเวลา ตามรูปแบบที่ได้จาก GET_FORMAT() mysql> SELECT DATE_FORMAT(2017-10-22, GET_FORMAT(date, USA)) AS DATE IN USA FORMAT; +-------------------+ | DATE IN U

  14. ประโยชน์ของฟังก์ชัน GET_FORMAT() ใน MySQL

    ฟังก์ชัน GET_FORMAT() ใช้แปลงชนิดข้อมูล เช่น DATE, TIME, DATETIME หรือ TIMESTAMP ให้อยู่ในรูปแบบมาตรฐานตามอาร์กิวเมนต์ที่สอง รูปแบบมาตรฐานอาจเป็น EUR, INTERNAL, ISO, JIS หรือ USA รหัสรูปแบบที่คืนมาเป็นรหัสเดียวกับที่ DATE_FORMAT() ใช้ ฟังก์ชันนี้มีประโยชน์เมื่อร่วมกับ DATE_FORMAT() และ STR_TO_DATE()

  15. วิธีกำหนดเงื่อนไขกรองข้อมูลที่ระดับกลุ่มในชุดผลลัพธ์ของ MySQL

    GROUP BY ในคำสั่ง SELECT แบ่งชุดผลลัพธ์เป็นกลุ่ม หากต้องการคืนเฉพาะกลุ่มบางกลุ่ม ต้องกำหนดเงื่อนไขกรองที่ระดับกลุ่ม ทำได้ด้วย HAVING ภายใน GROUP BY ตัวอย่างด้านล่างจะสาธิต: ตัวอย่าง สมมติต้องการคืนเฉพาะกลุ่มที่มีเงินเดือนเฉลี่ย 55000 ใช้เงื่อนไขใน HAVING ดังนี้: mysql> SELECT COUNT(*), AVG(salary

  16. วิธีแบ่งชุดผลลัพธ์ที่ MySQL คืนมาเป็นกลุ่มๆ

    ทำได้โดยใช้ GROUP BY ในคำสั่ง SELECT สามารถระบุคอลัมน์เป็นเกณฑ์การจัดกลุ่ม ด้วย GROUP BY แถวที่มีค่าเหมือนกันในคอลัมน์ที่ระบุจะถูกจัดเป็นกลุ่มเดียวกัน ดังนั้นชุดผลลัพธ์จะถูกแบ่งเป็นกลุ่มๆ ตัวอย่าง สมมติมีตาราง employees ดังนี้: mysql> SELECT * FROM employees; +------+-------------+--------+------

  17. วิธีแปลงจาก Unix timestamp เป็นค่า MySQL timestamp

    MySQL แปลง Unix timestamp เป็นค่าชนิดข้อมูล timestamp ด้วยฟังก์ชัน FROM_UNIXTIME() ตัวอย่าง mysql> SELECT FROM_UNIXTIME(1508622563); +-----------------------------+ | FROM_UNIXTIME(1508622563) | +-----------------------------+ | 2017-10-22 03:19:23 | +-----------------------------+ 1 ro

  18. วิธีแสดง (offload) การจัดการเวลา/วันที่ใน MySQL

    สามารถแสดงการจัดการเวลา/วันที่ให้ MySQL ด้วยฟังก์ชัน DATE_FORMAT() วันที่และเวลาจะถูกแสดงตามหน่วยรูปแบบที่ส่งเป็นอาร์กิวเมนต์ ตัวอย่าง: ส่งหน่วยรูปแบบวันที่ ให้ MySQL แสดงเฉพาะวันที่: mysql> SELECT DATE_FORMAT(2017-10-22 13:03:45, %Y %M %D) AS OFFLOADED DATE; +-------------------+ | OFFLOADED DAT

  19. วิธีใช้ TIME_FORMAT() แสดงค่าเวลา/วันที่ใน MySQL

    ฟังก์ชัน TIME_FORMAT() ใช้งานคล้าย DATE_FORMAT() แต่ใช้สำหรับแสดงค่า เวลา เท่านั้น MySQL จะคืนค่า NULL หากใช้ TIME_FORMAT() สำหรับแสดงค่าวันตา ตัวอย่าง: ส่งหน่วยรูปแบบเวลา ให้ MySQL แสดงเฉพาะเวลา: mysql> SELECT TIME_FORMAT(2017-10-22 13:03:45, %h %i %s %p) AS OFFLOADED TIME; +----------------+ |

  20. วิธีดึงเดือนและวันจากวันที่ที่กำหนดใน MySQL

    สามารถทำได้ 2 วิธี: (ก) ใช้ฟังก์ชัน EXTRACT() - EXTRACT() ดึงส่วนใดส่วนหนึ่งจากค่า MySQL TIMESTAMP ได้ ตัวอย่างดึงเดือนและวัน: mysql> SELECT EXTRACT(MONTH FROM 2017-10-22) AS MONTH; +-------+ | MONTH | +-------+ | 10 | +-------+ 1 row in set (0.00 sec) mysql> SELECT EXTRACT(DAY FROM 2017-1

Total 4564 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:218/229  20-คอมพิวเตอร์/Page Goto:1 212 213 214 215 216 217 218 219 220 221 222 223 224