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

รับช่วงวันที่ประทับเวลาด้วย MySQL Select?


ในการเลือกช่วงข้อมูลการประทับเวลา ให้ใช้ไวยากรณ์ด้านล่าง -

เลือก *จาก yourTableNamewhere yourDataTimeField>=anyDateRangeand yourDataTimeField  

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

mysql> สร้างตาราง DateRange −> ( −> DueTime timestamp −> ); สืบค้นตกลง 0 แถวได้รับผลกระทบ (1.34 วินาที)

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

mysql> แทรกลงในค่า DateRange ('2016-11-13'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.51 วินาที) mysql> แทรกลงในค่า DateRange ('2016-10-14'); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DateRange ('2017-01-23'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DateRange ('2017-05-14'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.19 วินาที) mysql> แทรกลงในค่า DateRange ('2017-08-25'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า DateRange ('2018-09-28'); แบบสอบถาม ตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงในค่า DateRange ('2018-11-17'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.47 วินาที) mysql> แทรกลงในค่า DateRange ('2018-12-13');Query OK, 1 แถวได้รับผลกระทบ (0.17 วินาที)mysql> แทรกลงในค่า DateRange ('2018-12-16'); Query OK, 1 แถวได้รับผลกระทบ (0.27 วินาที)

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

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

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

<ก่อนหน้า>+---------------------+| DueTime |+--------------------+| 2016-11-13 00:00:00 || 2016-10-14 00:00:00 || 2017-01-23 00:00:00 || 2017-05-14 00:00:00 || 2017-08-25 00:00:00 || 2018-09-28 00:00:00 || 2018-11-17 00:00:00 || 2018-12-13 00:00:00 || 2018-12-16 00:00:00 |+---------------------+9 แถวในชุด (0.00 วินาที)

หากต้องการเลือกช่วงวันที่ประทับเวลา ให้ใช้ข้อความค้นหาต่อไปนี้ −

mysql> เลือก *จาก DateRange −> โดยที่ DueTime>='2017-05-14' −> และ DueTime <'2018-12-17';

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

<ก่อนหน้า>+---------------------+| DueTime |+--------------------+| 2017-05-14 00:00:00 || 2017-08-25 00:00:00 || 2018-09-28 00:00:00 || 2018-11-17 00:00:00 || 2018-12-13 00:00:00 || 2018-12-16 00:00:00 |+---------------------+6 แถวในชุด (0.00 วินาที)

สมมติว่าการประทับเวลาของคุณอยู่ใน unix timestamp ให้ใช้ไวยากรณ์ต่อไปนี้

เลือก *จาก yourTableNamewhere yourColumnName>=unix_timestamp('anyDateValue') และ yourColumnName