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

มีฟังก์ชั่นที่คล้ายกับ trunc (sysdate) ของ Oracle ใน MySQL หรือไม่


ได้ คุณสามารถใช้ DATE() เพื่อรับเฉพาะส่วนของวันที่ใน MySQL และคุณสามารถใช้ CURDATE() เพื่อรับวันที่ปัจจุบันใน MySQL

วันที่ปัจจุบันเป็นดังนี้ −

mysql> เลือก curdate();+-----------+| curdate() |+-----------+| 2019-10-20 |+-----------+1 แถวในชุด (0.00 วินาที)

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

mysql> สร้างตาราง DemoTable1613 -> ( -> PostingDate datetime -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.48 วินาที)

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

mysql> แทรกลงในค่า DemoTable1613 ('2019-10-20 12:02:45'); เคียวรีตกลง ได้รับผลกระทบ 1 แถว (0.20 วินาที)mysql> ลงในค่า DemoTable1613 ('2018-10-20 12:02) :45');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> แทรกลงในค่า DemoTable1613 ('2015-10-20 12:02:45'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกเข้าไป ค่า DemoTable1613('2019-10-20 10:00:00');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.22 วินาที)

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

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

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

<ก่อนหน้า>+---------------------+| วันที่โพสต์ |+---------------------+| 2019-10-20 12:02:45 || 2018-10-20 12:02:45 || 2015-10-20 12:02:45 || 2019-10-20 10:00:00 |+---------------------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้คือข้อความค้นหาเพื่อใช้งานฟังก์ชันที่คล้ายกับ trunc (sysdate) ของ Oracle ใน MySQL –

mysql> เลือก * จาก DemoTable1613 โดยที่ date(PostingDate)=curdate();

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

<ก่อนหน้า>+---------------------+| วันที่โพสต์ |+---------------------+| 2019-10-20 12:02:45 || 2019-10-20 10:00:00 |+---------------------+2 แถวในชุด (0.00 วินาที)