2017-08-26 60 views
0

我試圖從兩個連接的表中查詢數據,日期作爲標準使用下面的查詢,但它沒有帶來什麼,有人可以告訴我我做錯了什麼。Mysql在連接表上的日期之間查詢數據

SELECT Journal_T.GL_ID as Akaunti 
     ,coa_t.gl_name_vc 
     ,SUM(Amount_NU) as YTD 
FROM Journal_T 
     JOIN coa_t 
     ON journal_t.gl_id = coa_t.gl_id 
WHERE CAST(date_dt AS DATE) BETWEEN '25/08/2017' AND '25/08/2017' 
     AND bs_category_vc='Rev' 
GROUP BY coa_t.gl_name_vc 
     ,Journal_T.GL_ID 
+0

你確定這樣的鑄造日期?是高度依賴於在mysql服務器上活動的語言環境(國家) –

+0

你可以發佈一些數據,特別是date_dt的樣子。最好在你知道應該出現在列表中 – twoleggedhorse

+0

這個樣本date_dt 25/08/2017 03:08:11 –

回答

1

ISO 8601的日期格式應爲 '2017年8月26日'。試試這個查詢,看看您的服務器上默認的日期格式:

select STR_TO_DATE("26/08/2017", '%d/%m/%Y') 

然後你可以將其轉換,例如「%Y-%間%d」格式:

DATE_FORMAT(STR_TO_DATE("26/08/2017", '%d/%m/%Y'), '%Y-%m-%d') 
+0

@vladatr謝謝,我改變了我如何將數據庫中的日期存儲到Ymd並且它工作。 –

0

我想你可以嘗試此查詢:

SELECT journal_T.GL_ID如Akaunti,coa_t.gl_name_vc,總和(Amount_NU)作爲YTD FROM Journal_T LEFT JOIN coa_t上journal_t.gl_id = coa_t.gl_id WHERE DATE_FORMAT(date_dt,'% d%m-%Y')'25/08/2017'和'2'之間2017' 年5月8日 和bs_category_vc =‘版本’ GROUP由coa_t.gl_name_vc,Journal_T.GL_ID

+0

這不適合我 –