我有一個由excel填充的表格。列中的日期顯示根據我的系統的時區選擇查詢在mysql中運行。 但是,當我使用jdbc連接在java中運行相同的查詢時,我沒有得到正確的值,因爲它出現在Excel中。 我知道這是時區問題。請指導我需要爲選擇查詢所做的更改Java以正確的格式從mysql中檢索日期記錄
以下查詢的結果爲NULL。
SELECT * FROM mysql.time_zone;
SELECT * FROM mysql.time_zone_name;
只是爲了詳細說明這個問題,當我在mysql服務器上運行日期選擇查詢時,我得到了列的正確日期值。但是當我通過Java程序運行相同的時候,我將轉換後的值轉換爲不同的時區。
Java代碼如下: - 在SELECT
resultList=(List<FosProd>)getEntityManager().createNativeQuery("select fe, count(ldcfe) as Ttlv, count(IF(ldcfe='PTP',1,NULL)) as PTP,DAY(ludfe) as dayte from (select FOS_NAME as fe,Last_Disposition_Code_FOS as ldcfe,Last_Updated_Date_FOS as ludfe from kic.master_mis group by ALLOCATION_DATE,ALLOCATION_BUCKET,BILLED_ID,CUSTOMER_NAME,TOTAL_OUTSTANDING) as s1 where monthname(ludfe)=\"NOVEMBER\" GROUP BY MONTH(ludfe), DAY(ludfe),fe;", FosProd.class).getResultList();
DAY功能是提供我轉換後的值。 請幫忙。
public class FosProd implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Size(max = 50)
@Column(name = "fe")
private String fe;
@Basic(optional = false)
@NotNull
@Column(name = "Ttlv")
private long ttlv;
@Basic(optional = false)
@NotNull
@Column(name = "PTP")
@Id
private long ptp;
@Column(name = "dayte")
private Integer dayte;
是什麼在Excel中?數據庫中有什麼?你在Java中得到什麼?任何可能爲你的問題提供一些線索的東西? –
Excel是Msexcel電子表格。 DB是mysql數據庫。只是爲了詳細說明這個問題,當我在mysql服務器上運行日期選擇查詢時,我得到了正確的日期值。但是,當我通過一個Java程序運行相同的,我得到轉換後的值。 – rahul
如果您包含java代碼,將會很有幫助。 – Thierry