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

MySQL เลือกวันที่แตกต่างจากคอลัมน์ datetime ในตาราง?


คุณต้องใช้คีย์เวิร์ด DISTINCT เพื่อเลือกวันที่ที่แตกต่างจากคอลัมน์วันที่และเวลาในตาราง

ตัวอย่างเช่น ให้เราสร้างตาราง

mysql> สร้างตาราง PostMessageDemo -> ( -> UserId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> UserMessage varchar(100), -> UserPost datetime -> );Query OK, 0 แถวได้รับผลกระทบ (0.60 วินาที)

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

แบบสอบถามมีดังนี้

mysql> แทรกลงใน PostMessageDemo (UserMessage, UserPost) ค่า ('Software Developer', now ()); Query OK, 1 แถวได้รับผลกระทบ (0.17 วินาที)mysql> แทรกลงใน PostMesssageDemo (UserMessage, UserPost) ค่า ('Software Developer ',date_add(now(),ช่วง 3 เดือน));Query OK, 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> แทรกลงใน PostMessageDemo (UserMessage, UserPost) ค่า ('Software Developer', now());Query OK, 1 แถวที่ได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า PostMessageDemo (UserMessage, UserPost) ('Software Developer','2019-03-31 17:30:34'); Query OK, 1 แถวได้รับผลกระทบ (0.10 วินาที)

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

แบบสอบถามมีดังนี้

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

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

<ก่อนหน้า>+---------+--------------------------+---------------- -----+| รหัสผู้ใช้ | ข้อความผู้ใช้ | UserPost |+----------------+--------------------------+----------------- ----+| 1 | นักพัฒนาซอฟต์แวร์ | 2019-02-15 18:07:27 || 2 | นักพัฒนาซอฟต์แวร์ | 2019-05-15 18:09:18 || 3 | นักพัฒนาซอฟต์แวร์ | 2019-02-15 18:09:31 || 4 | นักพัฒนาซอฟต์แวร์ | 2019-03-31 17:30:34 |+---------+--------------------------+------- --------------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อรับวันที่ที่แตกต่างกัน

mysql> เลือกปีที่แตกต่างกัน (UserPost) เดือน (UserPost) จาก PostMessageDemo

นี่คือผลลัพธ์

+----------------+----------------+| ปี(UserPost) | เดือน(UserPost) |+----------------+-----------------+| 2019 | 2 || 2019 | 5 || 2019 | 3 |+----------------+-----------------+3 แถวในชุด (0.00 วินาที)