Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

รับหมายเลขสัปดาห์ใน MySQL สำหรับวันในสัปดาห์หรือไม่


ฟังก์ชัน MySQL DAYOFWEEK() คืนค่า 1 สำหรับวันอาทิตย์ 2 สำหรับวันจันทร์ และอื่นๆ สำหรับวันในสัปดาห์ เรามาดูตัวอย่างโดยสร้างตารางก่อน -

mysql> สร้างตาราง DayOfWeekDemo−> ( −> วันที่ออกวันที่time−> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.52 วินาที)

การแทรกวันที่ในตารางโดยใช้คำสั่ง insert แบบสอบถามมีดังนี้ −

mysql> แทรกลงในค่า DayOfWeekDemo (date_add(curdate(),interval 5 day));Query OK, 1 แถวได้รับผลกระทบ (0.52 วินาที)mysql> แทรกลงในค่า DayOfWeekDemo (date_add(curdate(),interval 6 day));แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที)mysql> แทรกลงในค่า DayOfWeekDemo (date_add(curdate(), ช่วง 7 วัน)); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DayOfWeekDemo (date_add (curdate) (),ช่วง 8 วัน));แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรกลงในค่า DayOfWeekDemo (date_add(curdate() ช่วง 9 วัน)); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DayOfWeekDemo (date_add(curdate(), ช่วง 10 วัน)); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า DayOfWeekDemo (date_add (curdate (), ช่วงเวลา 11 วัน)); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที)

ตอนนี้คุณสามารถแสดงจำนวนระเบียนที่มีอยู่ในตารางโดยใช้คำสั่ง select แบบสอบถามมีดังนี้ −

mysql> เลือก *จาก DayOfWeekDemo;

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+---------------------+| วันที่ออก |+---------------------+| 2018-12-03 00:00:00 || 2018-12-04 00:00:00 || 2018-12-05 00:00:00 || 2018-12-06 00:00:00 || 2018-12-07 00:00:00 || 2018-12-08 00:00:00 || 2018-12-09 00:00:00 |+---------------------+7 แถวในชุด (0.00 วินาที)

ดูตารางด้านบน:2018-12-03 คือวันจันทร์ 2018-12-04 คือวันอังคาร เป็นต้น ต่อไปนี้เป็นแบบสอบถามเพื่อส่งคืนดัชนีของวันในสัปดาห์ -

mysql> เลือก dayofweek (ออก) เป็น WeekNumber จาก DayOfWeekDemo;

ต่อไปนี้เป็นผลลัพธ์ที่แสดงจำนวนวันในสัปดาห์ -

<ก่อนหน้า>+-----------+| สัปดาห์ที่ |+-----------+| 2 || 3 || 4 || 5 || 6 || 7 || 1 |+------------+7 แถวในชุด (0.00 วินาที)