หน้าแรก
หน้าแรก
สามารถเข้าใจได้ด้วยความช่วยเหลือของตัวอย่างต่อไปนี้ ซึ่งเราใช้ข้อมูลต่อไปนี้จากตารางชื่อ detail_bday - mysql> Select * from detail_bday; +----+---------+------------+ | Sr | Name | Birth_Date | +----+---------+------------+ | 1 | Saurabh | 1990-05-12 | | 2 | Raman
ในกรณีนี้ MySQL จะให้ค่า NULL แก่ส่วนคำสั่ง SET ตัวอย่างต่อไปนี้จะแสดงให้เห็น - ตัวอย่าง mysql> Select * from student; +----+---------+-----------+ | Id | Name | grade | +----+---------+-----------+ | 1 | Rahul | Good | | 2 | Gaur
อย่างที่เราทราบดีว่า CHAR ใช้เพื่อเก็บสตริงที่มีความยาวคงที่ และ VARCHAR ใช้เพื่อเก็บสตริงที่มีความยาวผันแปรได้ ดังนั้น เราจึงสามารถจัดเก็บความยาวคงที่และสตริงความยาวผันแปรในตารางเดียวกันได้โดยการประกาศคอลัมน์เป็น CHAR และส่วนอื่นๆ เป็น VARCHAR ตัวอย่าง mysql> Create Table Employees(FirstName CHA
ใน MySQL ทั้ง SERIAL และ AUTO_INCREMENT ใช้เพื่อกำหนดลำดับเป็นค่าเริ่มต้นสำหรับฟิลด์ แต่ทางเทคนิคต่างกันในทางเทคนิค แอตทริบิวต์ AUTO_INCREMENT ได้รับการสนับสนุนโดยประเภทข้อมูลตัวเลขทั้งหมด ยกเว้น BIT และ DECIMAL มีได้เพียงหนึ่งฟิลด์ AUTO_INCREMENT ต่อตาราง และลำดับที่สร้างโดยฟิลด์ AUTO_INCREMENT ใน
ค่าของคอลัมน์ในหลายแถวสามารถอัปเดตได้ในคำสั่ง UPDATE เดียว หากเงื่อนไขที่ระบุในส่วนคำสั่ง WHERE ตรงกับหลายแถว ในกรณีนี้ คำสั่ง SET จะนำไปใช้กับแถวที่ตรงกันทั้งหมด ตัวอย่าง สมมติว่าเรามีตาราง ประกวดราคา ดังนี้ - mysql> Select * from tender; +-----------+---------+------+ | tender_id | company | r
ด้วยความช่วยเหลือของคำสั่ง UPDATE และส่วนคำสั่ง WHERE เราสามารถอัปเดตค่าในแถวเดียวหรือหลายแถวของตาราง MySQL อัพเดตค่าตามเงื่อนไขที่ระบุในอนุประโยค WHERE ตัวอย่างเช่น สมมติว่าในตาราง พนักงาน เราต้องการเปลี่ยน ชื่อ และ ที่ทำงาน ของพนักงานที่มี id เป็น 1 สามารถทำได้ด้วยแบบสอบถามต่อไปนี้ - mysql> UPD
ดังที่เราทราบดีว่าเราสามารถแปลงค่าเวลาของวันที่และเวลาเป็นจำนวนเต็มได้โดยการเพิ่ม 0(+0) ลงในค่าเหล่านั้น ในทำนองเดียวกัน เราสามารถแปลงค่าวันที่และเวลาที่ส่งคืนโดยฟังก์ชัน FROM_UNIXTIME() ในรูปแบบตัวเลข ตัวอย่างต่อไปนี้จะอธิบายให้ชัดเจนยิ่งขึ้น - mysql> Select FROM_UNIXTIME(1555033470)+0 AS 'D
ฟังก์ชัน STR_TO_DATE() จะแปลงค่าสตริงเป็นค่าวันที่และเวลา และจะเป็นไปตามสตริงรูปแบบเฉพาะ ต้องส่งทั้งค่าสตริงและสตริงรูปแบบเป็นอาร์กิวเมนต์ของฟังก์ชัน ต่อไปนี้เป็นไวยากรณ์ของฟังก์ชัน STR_TO_DATE() STR_TO_DATE(string, format) สตริงคือค่าของสตริงที่ต้องแปลงเป็นค่าวันที่และเวลา และรูปแบบคือรูปแบบวันที่
ในขณะที่สร้างตาราง หากคอลัมน์ใดถูกกำหนดด้วยค่าเริ่มต้น จากนั้นโดยใช้คำหลัก เริ่มต้น ในคำสั่ง INSERT เราสามารถใช้ค่าเริ่มต้นสำหรับคอลัมน์นั้นได้ ตัวอย่างเช่น เราได้สร้างตาราง พนักงาน ด้วยค่าเริ่มต้นของคอลัมน์ DOJ ดังนี้ - mysql> Create table employee(id int, name varchar(20), doj date DEFAULT '
หากเราส่งสตริงที่ไม่ถูกต้องเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน STR_TO_DATE() แล้ว MySQL จะคืนค่า NULL เป็นเอาต์พุตพร้อมกับคำเตือน ต่อไปนี้เป็นตัวอย่างเพื่อให้เข้าใจตรงกัน - mysql> Select STR_TO_DATE('20173210', '%Y%d%m'); +-----------------------------------+ | STR_TO_DATE('20173210
หากสตริงรูปแบบที่ระบุและสตริงวันที่ไม่ตรงกัน MySQL จะส่งคืนค่า NULL เป็นเอาต์พุตพร้อมกับคำเตือน ต่อไปนี้เป็นตัวอย่างเพื่อให้เข้าใจตรงกัน - mysql> Select STR_TO_DATE('20172810', '%Y,%d%m'); +------------------------------------+ | STR_TO_DATE('20172810', '%Y,%d%m')
ต่อไปนี้เป็นฟังก์ชัน MySQL ซึ่งคำนวณระยะเวลาเป็นปี เดือน วัน ชั่วโมง นาที และวินาทีระหว่างวันที่สองวัน mysql> DROP FUNCTION IF EXISTS Duration; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> DROP FUNCTION IF EXISTS Label123; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> D
มีประโยชน์มากในการรวมฟังก์ชัน 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
MySQL GET_FORMAT() ฟังก์ชันใช้เพื่อแปลงประเภทข้อมูลเช่น DATE, TIME, DATETIME หรือ TIMESTAMP ในรูปแบบที่จัดรูปแบบตามรูปแบบมาตรฐานที่กำหนดเป็นอาร์กิวเมนต์ที่สอง ประเภทรูปแบบมาตรฐานอาจเป็น EUR, INTERNAL, ISO, JIS หรือ USA รหัสรูปแบบที่ส่งคืนเป็นรหัสเดียวกับที่ใช้โดยฟังก์ชัน DATE_FORMAT() ฟังก์ชันนี้มีป
ตามที่เราทราบ GROUP BY clause ในคำสั่ง SELECT สามารถแบ่งชุดผลลัพธ์ที่ส่งคืนโดย MySQL เป็นกลุ่ม ตอนนี้ หากเราต้องการส่งคืนเฉพาะบางกลุ่ม จำเป็นต้องใช้เกณฑ์การกรองที่ระดับกลุ่ม สามารถทำได้โดยใช้ส่วนคำสั่ง HAVING ภายในส่วนคำสั่ง GROUP BY ตัวอย่างด้านล่างจะแสดงให้เห็น − ตัวอย่าง สมมติว่าเราต้องการคืนเฉพา
สามารถทำได้โดยใช้ส่วนคำสั่ง GROUP BY ในคำสั่ง SELECT เราสามารถระบุคอลัมน์เป็นเกณฑ์การจัดกลุ่มโดยใช้อนุประโยค GROUP BY เนื่องจากเกณฑ์การจัดกลุ่มที่ระบุ แถวที่มีค่าเดียวกันในคอลัมน์ใดคอลัมน์หนึ่งจึงถือเป็นกลุ่มเดียว ด้วยวิธีนี้ ชุดผลลัพธ์ที่ส่งคืนโดยคำสั่ง MySQL SELECT จะถูกแบ่งออกเป็นกลุ่ม ตัวอย่าง
MySQL แปลงการประทับเวลา Unix เป็นค่าประเภทข้อมูลการประทับเวลาด้วยความช่วยเหลือของฟังก์ชัน FROM_UNIXTIME() ตัวอย่าง mysql> Select FROM_UNIXTIME(1508622563); +-----------------------------+ | FROM_UNIXTIME(1508622563) | +-----------------------------+ | 2017-10-22 03:19:23 &nbs
เราสามารถ offload การจัดการเวลา/วันที่ไปยัง MySQL ด้วยความช่วยเหลือของฟังก์ชัน DATE_FORMAT() วันที่และเวลาจะถูกออฟโหลดตามหน่วยรูปแบบที่ส่งผ่านเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน ตัวอย่างเช่น เมื่อเราส่งหน่วยรูปแบบวันที่เป็นอาร์กิวเมนต์ไปยังฟังก์ชัน MySQL DATE_FORMAT() แล้ว MySQL จะถ่ายเฉพาะวันที่ดังต่อไป
ฟังก์ชัน TIME_FORMAT() สามารถใช้ได้ในลักษณะเดียวกับฟังก์ชัน DATE_FORMAT() แต่ใช้ได้เฉพาะสำหรับการถ่ายค่าเวลาเท่านั้น MySQL ส่งคืนค่า NULL หากใช้ฟังก์ชัน TIME_FORMAT() สำหรับการถ่ายค่าวันที่ ตัวอย่างเช่น เมื่อเราส่งหน่วยรูปแบบเวลาเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน MySQL TIME_FORMAT() แล้ว MySQL จะถ่ายเฉพ
ไหลเข้าได้สองทาง − (A) ด้วยความช่วยเหลือของฟังก์ชัน EXRACT() - ฟังก์ชัน EXTRACT() สามารถดึงส่วนใดก็ได้จากค่า MySQL TIMESTAMP ต่อไปนี้เป็นตัวอย่างการดึงเดือนและวันจากวันที่ที่กำหนด mysql> Select EXTRACT(Month from '2017-10-22') AS 'MONTH'; +-------+ | MONTH | +-------+ | &n