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

รับวันแรกจากการประทับเวลาในกลุ่ม MySQL โดยคอลัมน์อื่นที่มีค่าซ้ำ


สำหรับสิ่งนี้ คุณสามารถใช้ฟังก์ชันการรวม MIN() และ GROUP BY ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1870 (รหัส int ไม่ใช่ NULL AUTO_INCREMENT คีย์หลัก, ค่า int, ShippingTimestamp varchar(100) ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.00 วินาที)

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

mysql> แทรกลงในค่า DemoTable1870(Value,ShippingTimestamp) (10,'1570645800') แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที)mysql> แทรกลงในค่า DemoTable1870 (Value,ShippingTimestamp) (10,'1546194600');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที)mysql> แทรกลงในค่า DemoTable1870(Value,ShippingTimestamp) (11,'1573324200'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงใน DemoTable1870 (Value, ShippingTimestamp) values(11,'1557599400');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.00 วินาที)

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

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

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

<ก่อนหน้า>+----+---------+-------------------+| รหัส | ความคุ้มค่า | ShippingTimestamp |+----+---------+-------------------+| 1 | 10 | 1570645800 || 2 | 10 | 1546194600 || 3 | 11 | 1573324200 || 4 | 11 | 1557599400 |+----+-------+-------------------+4 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อรับวันแรกจากการประทับเวลาใน MySQL &Minus;

mysql> เลือก min(ShippingTimestamp) จากกลุ่ม DemoTable1870 ตามค่า

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

<ก่อนหน้า>+-----------------------+| min(ShippingTimestamp) |+-----------------------+| 1546194600 || 1557599400 |+--------------------------------------+2 แถวในชุด (0.00 วินาที)