

方法如下:
MS SQL數(shù)據(jù)庫:
SQL="select * from 表名 where 時(shí)間/日期字段 between '"& 傳遞過來開始的時(shí)間值 &"' and '"& DateAdd("d",1,""&request.Form("endtime")&"")&"'"
Access數(shù)據(jù)庫:
SQL="select * from 表名 where Ap_addtime between #"& 傳遞過來開始的時(shí)間值 &"# and #"&DateAdd("d",1,""&request.Form("endtime")&"")&"# ..."
今天做產(chǎn)品高級(jí)搜索遇到了時(shí)間段搜索,發(fā)現(xiàn)了一些常犯的錯(cuò)誤
1. 把日期當(dāng)作字符串來操作,在SQL語句中,其實(shí)日期和數(shù)字一樣,都不能加'字符串',否則會(huì)出現(xiàn)語法錯(cuò)誤
2. 選擇某個(gè)日期中間的記錄可以用between and 而不是用< > =等符號(hào),而且日期之間也有講究,access數(shù)據(jù)庫的日期間用#日期#隔開,mssql用'單引號(hào)',如:
timestr類型為日期/時(shí)間
Dim dateStr1,DateStr2
DateStr1="2006-8-10"
DateStr2=Date()
sql="select * from 表名 where 時(shí)間/日期字段 between #"& 開始的時(shí)間 &"# and #"& 結(jié)束的時(shí)間 &"#"
ASP比較時(shí)間的SQL語句,其中d為天數(shù)!
access
select * from [table] where datediff('d',時(shí)間字段,Now())=0
--------------------------------------------------------------------------------
Sql Server
select * from [table] where datediff(d,時(shí)間字段,GetDate())=0
您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國家安全、泄露國家秘密,不得侵犯國家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。
蘇公網(wǎng)安備 32070502010230號(hào)