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

แบบสอบถาม MySQL เพื่อส่งคืนระเบียนทั้งหมดที่มีวันที่และเวลามากกว่า 1 สัปดาห์


เพื่อให้ได้วันที่ที่เก่ากว่า 1 สัปดาห์ คุณสามารถใช้ไวยากรณ์ต่อไปนี้ -

เลือก *จาก yourTableName โดยที่ yourColumnName  

เพื่อให้เข้าใจแนวคิดข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้ −

mysql> สร้างตาราง DatesOfOneWeek −> ( −> ArrivalTime datetime −> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.87 วินาที)

แทรกระเบียนบางส่วนในตาราง −

mysql> แทรกลงในค่า DatesOfOneWeek(date_add(now(),interval 2 week));ตกลง, 1 แถวได้รับผลกระทบ (0.11 วินาที)mysql> แทรกลงในค่า DatesOfOneWeek ('2018-11-04'); เคียวรีตกลง , 1 แถวได้รับผลกระทบ (0.14 วินาที)mysql> แทรกลงในค่า DatesOfOneWeek ('2018-11-25'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า DatesOfOneWeek (date_add (ตอนนี้ () ช่วงเวลา -1 สัปดาห์)); ตกลง แบบสอบถาม 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DatesOfOneWeek (date_add (ตอนนี้ () ช่วงเวลา 1 สัปดาห์)); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที)

ให้เราตรวจสอบบันทึกที่เราได้แทรกไว้ข้างต้นว่ามีอยู่หรือไม่ แบบสอบถามเพื่อแสดงระเบียนทั้งหมดจากตารางมีดังนี้ −

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

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

<ก่อนหน้า>+---------------------+| เวลามาถึง |+---------------------+| 2018-12-20 18:11:02 || 2018-11-04 00:00:00 || 2018-11-25 00:00:00 || 2018-11-29 18:11:40 || 2018-12-13 18:11:46 |+---------------------+5 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถาม MySQL เพื่อรับวันที่ที่ผ่านมานั่นคือวันที่ทั้งหมดก่อน 1 สัปดาห์ -

mysql> เลือก *จาก DatesOfOneWeek โดยที่ ArrivalTime  

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

<ก่อนหน้า>+---------------------+| เวลามาถึง |+---------------------+| 2018-11-04 00:00:00 || 2018-11-25 00:00:00 || 2018-11-29 18:11:40 |+---------------------+3 แถวในชุด (0.00 วินาที)