我喜歡使用 JMP interative 取得輸入開始和結束時間,然後使用 SQL 過濾資料表。 參數 dateb 和 datee 如果定義為例如“2017-10-10”、“2017-11-11”則工作正常,但是當使用分配的變數 dateb 和 datee 時,我沒有得到正確的過濾(空表)。
我感謝您能提供的任何幫助。 謝謝。
------------------------------------------------
defuplim =今天();
去流極限=今天()-幾天內(第730章);
WW =新窗戶( “以 yyyy-mm-dd 格式選擇日期” ,
<<莫代爾,
<<回傳結果,
V 列錶框(
文字方塊( “開始日期:” ),
str1 =數位編輯框(
去流限,
10 ,
<<設定函數(
功能( {那},
低限 = str1 <<得到
)
)
),
文字方塊( “結束日期:” ),
字串2 =數位編輯框(
德福林,
10 ,
<<設定函數(
功能( {這},
上行= str2 <<得到
),
)
),
字串1 <<設定格式(格式( “年-月-日” ) ),
字串2 <<設定格式(格式( “年-月-日” ) )
),
H 列錶框(按鈕盒( “好的” ),按鈕盒( “取消” ) ),
);
日期b =截至日期(WW[ “str1” ]);
約會對象 =截至日期(WW[ “str2” ]);
日期b =格式(日期, “年-月-日” );
約會對象 =格式(約會對象, “年-月-日” );
dt1 =開放資料庫(
“DSN=XXX;UID=root;PWD=xxxxx;” ,
“從 xyz 中選擇 *,其中日期(開始時間)在‘dateb’和‘datee’之間” , “三甲酚”
);
看看這個修改是否有效
defuplim = Today();
deflowlim = Today() - In Days( 730 );
ww = New Window( "Pick Your Dates in yyyy-mm-dd format",
<<MODAL></MODAL>
您需要將字串日期轉換回日期,以便資料庫能夠理解它們。如果這是 Oracle,您需要這樣的語句:
sql_statement = evalinsert(
"Select *
from xyz
where date(starttime) between to_date('^dateb^', 'YYYY-MM-DD')
and to_date('^datee^', 'YYYY-MM-DD') ");
dt1 = Open Database("DSN=XXX;UID=root;PWD=xxxxx;", sql_statement);