cari

Rumah  >  Soal Jawab  >  teks badan

MySQL Bagaimana untuk memilih tarikh daripada medan jenis datetime

Terdapat medancreated_atjenis datetime Bagaimana untuk memilih data tarikh tertentu?

SELECT * FROM data WHERE created_at = '2017-06-29';
SELECT * FROM data WHERE created_at BETWEEN '2017-06-29 00:00:00' AND '2017-06-29 23:59:59';

Tiada satu pun yang betul, set hasil semua kosong

某草草某草草2798 hari yang lalu1064

membalas semua(5)saya akan balas

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-30 09:55:42

    Artikel rujukan: Fungsi berkaitan pemprosesan masa MySQL

    WHERE TARIKH(dicipta_pada) = '2017-06-29'

    atau

    WHERE created_at LIKE '2017-06-29%'

    balas
    0
  • 習慣沉默

    習慣沉默2017-06-30 09:55:42

    Format lalai datetime ialah '2017-06-29 00:00:00' Jika data anda mempunyai data pada hari ini, item kedua akan mendapat keputusan, jadi anda perlu menyemak sama ada terdapat data pada hari ini. dalam jadual. Dan apakah format data anda?

    PS: Untuk mendapatkan data hari tertentu, anda boleh create_at seperti 'yyyy-mm-dd%' atau cara kedua anda menulis, tarikh(created_at) dan left(created_at) juga boleh mendapatkan tarikh hari tersebut, tetapi mereka tidak akan diindeks, kecekapannya sangat lemah

    balas
    0
  • 仅有的幸福

    仅有的幸福2017-06-30 09:55:42

    Saya boleh, tetapi mungkin jadual atau medan anda salah, atau memang tiada hasil. . Syaratnya tiada masalah

    balas
    0
  • 高洛峰

    高洛峰2017-06-30 09:55:42

    select * from data d WHERE d.created_at >= curdate()
    and d.created_at < DATE_ADD(STR_TO_DATE(curdate(), '%Y-%m-%d'), INTERVAL 1 DAY);

    Ini bermaksud untuk menanyakan masa yang lebih besar daripada atau sama dengan 0:00 hari ini dan kurang daripada 0:00 esok

    balas
    0
  • 黄舟

    黄舟2017-06-30 09:55:42

    Baris pertama adalah salah kerana format tarikh adalah berbeza daripada format dalam keadaan anda.

    Baris kedua betul
    Hasilnya pun betul, sebab memang tak ada data.

    balas
    0
  • Batalbalas