2017-11-02 2 views
0

ich das Zeitformat in mysql Abfrage dies ändern will:Zeitänderung in mysql Code

e_date_s = %m/%d/%Y 
e_date_e = %m/%d/%Y 

Um dies:

e_date_s = %Y/%m/%d 
e_date_e = %Y/%m/%d 

Meine Frage ist:

$q3 = "SELECT c_m_vin, e_date_s,e_date_e FROM core 
    JOIN event_1 ON core.c_e_token = event_1.e_1_uniek WHERE ((e_date_s <= '$date') 
    AND (e_date_e >= '$date') AND (e_date_e LIKE '%$year%') 
    AND (c_m_vin = '$res1->m_vin'))"; 

I sah Optionen über UNIX_TIMESTAMP. Versteht das jemand?

UPDATE

$q3 = " 
    SELECT c_m_vin, 
    DATE_FORMAT('e_date_s','%Y-%m-%d') AS e_date_s_new, 
    DATE_FORMAT('e_date_e','%Y-%m-%d') AS e_date_e_new 
    FROM core 
    JOIN event_1 
    ON core.c_e_token = event_1.e_1_uniek WHERE ((e_date_s_new <= '$date') AND (e_date_e_new >= '$date') AND (e_date_e_new LIKE '%$year%') AND (c_m_vin = '$res1->m_vin'))";   

Antwort

0

Sie können die MySQL DATE_FORMAT Funktion in Ihrer select-Anweisung verwenden das Datum direkt in der Abfrage zu formatieren, sofern Ihre Spalte ein tatsächliches Datum Typ ist.

SELECT DATE_FORMAT(e_date_s, "%Y/%m/%d") AS formatted_date 
from... 
+0

Wie verarbeite ich das in meiner Abfrage? –

+0

Ich bin mir nicht sicher, ob ich deine Frage dort verstehe ...? So würden Sie die SELECT-Anweisung anpassen, die Sie in Ihrer Abfrage ausführen würden, um das korrekt formatierte Datum zurückzugeben. –

+0

Wo muss ich DATE_FORMAT platzieren? Und nach dem AS ist das der neue Name von e_date_s? –