sql搜索時間
⑴ 如何在sql中按時間段查詢數據
sql server:
select * from 表 where 發生日期>'2008-7-1' and 發生日期<'2008-12-31'
access:
select * from 表 where 發生日期>#2008-7-1# and 發生日期<#2008-12-31#
這樣就可以了,注意sql server與access中的日期有一點不一樣。
(1)sql搜索時間擴展閱讀:
sql查詢日期語句
select * from ShopOrder where datediff(week,ordTime,getdate()-1)=0 //查詢當天日期在一周年的數手燃宏據
select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0畢冊 //查詢當天的所有數據
SELECT * FROM A where datediff(d,datetime,getdate()) <=30 //前30天
SELECT * FROM A WHERE DATEDIFF(m, shijian, GETDATE()) <=1 //上一月
查詢當天記錄另類的方法:段神
SELECT *
FROM j_GradeShop
WHERE (GAddTime BETWEEN CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000')
AND CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000') + 1)
ORDER BY GAddTime DESC
⑵ SQL語句查詢特定時間段的數據怎麼寫
SQL伺服器:
Select*fromtablewhere'2008-7-1'和'2008-12-31'
訪問:
從表中選擇發生日期>#2008-7-1#和發生日期<#2008-12-31#
就是這樣:注意,SQLserver中的日期和訪問有一點不同。
(2)sql搜索時間擴展閱讀:
SQL查詢日期語句
Select*fromShopOrderwheredatediff(week,ordTime,getdate()-1)=0//查詢第一年的日期
Select*fromShopOrder,其中datediff(day,ordTime,getdate()-1)=0//查詢當天的所有數據
SELECT * FROM A where datediff(d,datetime,getdate()) <=30 //前30天
SELECT * FROM A WHERE DATEDIFF(m, shijian, GETDATE()) <=1 //上個月
搜索當天記錄的其他方法:
SELECT*
FROMj_GradeShop
其中(GAddTimeBETWEENCONVERT(datetime,LEFT(GETDATE(),10)+'00:00:00.000'))
並轉換(datetime,LEFT(GETDATE(),10)+'00:00:00.00.000')+1)
由GAddTime指定的訂單
⑶ 關於SQL模糊查詢日期時間的方法
有以下三種方法:
1、Convert轉成String,在用Like查詢
select * from table1 where convert(varchar,yourtime,120) like '2017-06-30%'
2、Between
select * from table1 where yourtime between '2017-06-30 0:00:00' and '2017-06-30 24:59:59'";
3、datediff()函數
select * from table1 where datediff(day,yourtime,'2017-06-30')=0
(3)sql搜索時間擴展閱讀:
滾與上述日期格式的like模糊查詢的注意事項
1、select * from T where sendTime like '%2007_12_%' 可以查詢2007年12月的所有記錄
如果like條件改為'%2007-12-%' ,'%2007_12_3%' ,或'%2007_12_30%' 都查不出數據。
2、select * from T where sendTime like '%12_30%' 可以查詢12月30日的所有記錄
如果like條件改為'%07_12_30%' 也查不出數據。
⑷ sql按時間條件查詢如何寫
用between有個問題就是最後一天查詢不到,也就是他的范圍是[2011-1-1,
2011-2-1)
也可以直接用>=和<=來查詢,比如:
select
*
from
table
where
時間>='2011-1-1'
and
時間<'2011-2-1'
或者
select
*
from
table
where
時間
between
'2011-1-1'
and
'2011-2-1'
⑸ SQL中查詢日期語句
SQL SERVER:
用函數datepart處理就可以了,示例:
select datepart(weekday,getdate()) as 周內的第幾日
select datepart(week,getdate()) as 年內的第幾周
select datepart(quarter,getdate()) as 年內的第幾季
周內的第幾日
-----------
5
(所影響的行數為 1 行)
年內的第幾周
-----------
34
(所影響的行數為 1 行)
年內的第幾季
-----------
3
(所影響的行數為 1 行)
⑹ 關於SQL模糊查詢日期時間的方法
1、Convert轉成String,在用Like查詢。
select*fromtable1 whereconvert(varchar,yourtime,120) like '2017-06-30%'
2、Between
select*fromtable1whereyourtime between '2017-06-30 0:00:00' and '2017-06-30 24:59:59'";
3、datediff()函數
select*fromtable1 wheredatediff(day,yourtime,'2017-06-30')=0
(6)sql搜索時間擴展閱讀
表達式DateDiff(timeinterval,date1,date2 [, firstdayofweek [, firstweekofyear]])
允許數據類型: timeinterval 表示相隔時間的類型,代碼為:
年份 yy、yyyy 季度 qq、q
月份 mm、m
每年的某一日 dy、y
日期 dd、d
星期 wk、ww
工作日 dw
小時 hh
分鍾 mi、n
秒 ss、s
毫秒 ms
⑺ sql 怎樣查詢現在日期
使用【Getdate()】和【Convert()】函數可以實現。
使用方法如下:
selectconvert(varchar(10),getdate(),120)asCurDate
延伸:
1、【Getdate()】函數返回當前SQL伺服器中的計算機時間,包含:年-月-日 時-分-秒.毫秒
2、【Convert()】函數是轉換數據格式,因為只需要日期部分,所以只用varchar(10)長度即可,若需要完整時間可以使用varchar(19)
⑻ SQL查詢日期的年份
要返回正確的記錄,你需要適用日期和時間范圍。有不止一種途徑可以做到這一點。例如,下面的這個SELECT 語句將能返回正確的記錄: SELECT * FROM weblog WHERE entrydate>=」12/25/2000」 AND entrydate<」12/26/2000」 這個語句可以完成任務,因為它選取的是表中的日期和時間大於等於12/25/2000 12:00:00:000AM並小於12/26/2000 12:00:00:000AM的記錄。換句話說,它將正確地返回2000年聖誕節這一天輸入的每一條記錄。 另一種方法是,你可以使用LIKE來返回正確的記錄。通過在日期表達式中包含通配符「%」,你可以匹配一個特定日期的所有時間。這里有一個例子: SELECT * FROM weblog WHERE entrydate LIKE 『Dec 25 2000%』 這個語句可以匹配正確的記錄。因為通配符「%」代表了任何時間。