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

มีวิธีลบจำนวนวันออกจากวันที่ใน MySQL หรือไม่?


ได้ คุณสามารถใช้ date_sub() เพื่อลบจำนวนวันออกจากวันที่ได้ ต่อไปนี้เป็นไวยากรณ์ -

select date_sub(yourColumnName,Interval yourAmountOfDays day) จาก yourTableName;

ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable660(AdmissionDate datetime);Query OK, 0 แถวได้รับผลกระทบ (0.82 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable660 ('2018-01-24') แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงในค่า DemoTable660 ('2019-07-10'); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า DemoTable660 ('2020-11-20'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.59 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

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

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+---------------------+| AdmissionDate |+---------------------+| 2018-01-24 00:00:00 || 2019-07-10 00:00:00 || 2020-11-20 00:00:00 |+---------------------+3 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อลบจำนวนวันจากวันที่ใน MySQL -

mysql> เลือก date_sub(AdmissionDate,Interval 5 day) จาก DemoTable660;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+--------------------------------------+| date_sub(AdmissionDate,ช่วง 5 วัน) |+------------------------------------------------------ +| 2018-01-19 00:00:00 || 2019-07-05 00:00:00 || 2020-11-15 00:00:00 |+-------------------------------------- --+3 แถวในชุด (0.00 วินาที)