SQL新鮮出爐,與我無關。我正在使用java,eclipse和JDBC。SQL Where子句中的日期範圍
您好所有,我有3個表(company
,priceVolume
,dividend
),其中priceVolume
包含一個稱爲transdate(串一個股值分裂的日期爲幾個不同的類別,IE。openValue,CloseValue,averageValue .. 。)。在我的所有表格中,主鍵是Ticker
(公司的股票代碼)。
我在公司裏也有一個屬性叫行業,它告訴我什麼行業是股票來自。
我有一段時間,例如09.25.2001至02.28.2012其中的一個,如果公司位於所選行業,我想從priceVolume中獲取值。
我有這個查詢,我不知道如何使用WHERE子句給我這個範圍,只有這個範圍。如果類型是日期類型,我想我會知道如何對它進行描述。然而,目前,作爲一個字符串,我不知道。我也無法控制數據庫,只是從中讀取數據。
ResultSet rsTickers = stat.executeQuery("SELECT Ticker, OpenValue, CloseValue,
TransDate FROM company NATURAL JOIN pricevolume WHERE industry = " + GivenIndustry + "
GROUP BY ticker");
目前,我有我的程序設置,使它只是給我的所有行的誰是行業的特定行業相匹配,我只是有點通過他們在我的節目(我扔掉了所有的一個人的誰不在跨度)。它有效,但我覺得它確實是無效的。所以現在我想限制我的查詢只適合我的標準的transDates。
我只想看看如何做得更好。
不完全是,他會被燒傷的11個月和12個,其中排序像一月,是嗎?編輯 - 我可能會考慮鑄造兩個字符串日期也;那麼格式不是問題。這是一個時髦的想法。 –
我可以說('2001-9-25'AS DATETIME)嗎? – AlexLordThorsen
你可以說'cast('2001-09-25'爲DATETIME)'嘗試一下並回報。 –