1. sql server 日期范圍查詢
SELECT * FROM 表明 WHERE 日期欄位名 BETWEEN '20130101' AND '20130130'
或者:
SELECT * FROM 表明 WHERE 日期欄位名 BETWEEN CONVERT(datetime,'2013-01-01',120) AND CONVERT(datetime,'2013-01-30',120)
(1)sql怎麼設置日期區間擴展閱讀:
注意事項
在寫按時間段查詢的sql語句的時候 一般我們會這么寫查詢條件:
where date>='2010-01-01' and date<='2010-10-1'。
但是在實執行Sql時些語句會轉換成這樣:
where date>='2010-01-01 0:00:00' and date<='2010-10-1:0:00:00',再看這個條件的話,就會有些明白,那就是'2010-10-1 0:00:00' 之後的數據例如('2010-10-1:08:25:00')查不到,也就是說2010-10-1的數據查不到。
修改查詢條件為:
where date>='2010-01-01' and date<='2010-10-1 23:59:59' 或 where date>='2010-01-01' and date<='2010-10-2'。
某個表某個欄位是Datetime型 以"YYYY-MM-DD 00:00:00" 存放
2. 如何在SQL查詢中設置時間格式
SQL的時間格式是:YYYY-MM-DD HH:NN:SS.sss
其sss是毫秒,由於計算機內部時鍾晶振的問題,SQL時間最小單位為3毫秒。
一般SQL時間格式處理:大都採取轉換格式至datetime格式
例如顯示時常用到的:
1、將2015轉換為當年的第一天:
selectcast('2015'+'-1-1'asdatetime)
輸出結果為:2015-01-01 00:00:00.000
2、將2015-02轉換為當年的第一天:
selectcast('2015-02'+'-1'asdatetime)
輸出結果為:2015-02-01 00:00:00.000
其實以上可以總結為將具有一定格式的字元串轉換為日期類型,只要將年月日補全,後面的時間會默認為0時0分0秒0毫秒
3. 怎麼用SQL實現日期區間遍歷每天數據
以下可以達到你的要求不?
SQL code
?
SELECT 開始日期
,結束日期
,用戶ID
,工作內容
FROM 基礎數據
,(SELECT TO_DATE('2010/12/01', 'YYYY/MM/DD') + ROWNUM - 1 DAY_DATE FROM DUAL CONNECT BY ROWNUM < 32) DT
WHERE 基礎數據.開始日期 = DT.DAY_DATE
4. sql裡面如何設置查詢的時間范圍
對 SQL SERVER 資料庫
----------------------------
SELECT * FROM 表名 WHERE 離崗時間<'2005-10-30'
SELECT * FROM 表名 WHERE 離崗時間 BETWEEN '2005-1-1' AND '2005-10-30'
------------------------------------
對 ACCESS
----------------------------
SELECT * FROM 表名 WHERE 離崗時間<#2005-10-30#
SELECT * FROM 表名 WHERE 離崗時間 BETWEEN #2005-1-1# AND #2005-10-30#
5. 資料庫的日期區間查詢方法。
access中有個mid函數,可以用來截取字元串或者日期。
select * from 表名 where mid([TestTime],5,10) ='04/19/2013'其中,5代表截取的開始位置,從左數,10代表截取的長度。
資料庫的日期區間查詢有兩種情況:
1:查詢給定時間在開始時間列與結束時間列范圍中數據;
2:查詢日期列在開始時間列與結束時間列范圍中數據。
第一種:<,>, <= , >=
select * from 表名 where 日期列 >= to_date('2015-10-20 00:00:00','yyyy-mm-dd hh24:mi:ss')
and t.日期列 <= to_date('2015-10-20 23:59:59','yyyy-mm-dd hh24:mi:ss')。
第二種 between and
select * from 表名 where 日期列 between to_date('2015-10-20 00:00:00','yyyy-mm-dd
hh24:mi:ss')and to_date('2015-10-20 23:59:59','yyyy-mm-dd hh24:mi:ss')。
(5)sql怎麼設置日期區間擴展閱讀:
SQL資料庫語句:
創建資料庫:
CREATE DATABASE database-name。
刪除資料庫:
drop database dbname。
創建新表:
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)。
刪除新表:
drop table tabname。
增加一個列:
Alter table tabname add column col type。
添加主鍵:
Alter table tabname add primary key(col)。
刪除主鍵:
Alter table tabname drop primary key(col)。
創建索引:
create [unique] index idxname on tabname(col….)。
刪除索引:
drop index idxname。
創建視圖:
create view viewname as select statement。
刪除視圖:
drop view viewname。
參考資料來源:網路-sql語句大全
6. SQL日期問題,怎麼樣按記錄里的日期進行分類,15天一檔
不知道你是什麼資料庫,只能寫個意思,具體的內容要你自己搞定。
其實就是把日期欄位截取一下,如果日期本身沒辦法截取,那就轉換一下。比如如果是oracle那麼可以用to_char轉換為字元型,然後再截取。如果擔心1月和10月截取重復,那就多截取一位,或者查找第二個/字元的位置截取。
截取完成後,在用截取後的日期和客戶分組,金額匯總求和就可以了。
我比較熟悉oracle,我用oracle的寫法嘗試這寫一個,如果不是oracle,那麼你就要自己找找類似的了。(日期也可以直接截取,不過好長時間沒寫忘記怎麼寫了,就寫一個轉換的吧)
select
substr(to_char(日期),1,instr(to_char(日期),'/',1,2)-1)
月份,客戶,sum(金額匯總)
from
table
group
by
substr(to_char(日期),1,instr(to_char(日期),'/',1,2)-1)
,客戶
7. sql中如何批量修改指定區間日期
update RetailBillIndex set BillDate = add_months(BillDate,-12) where BillDate >= to_date('2017-07-01','yyyy/mm/dd') and BillDate < to_date('2017-09-01','yyyy/mm/dd');
8. 怎麼修改sql資料庫中的指定時間
方法和操作步驟如下:
1.首先,打開資料庫並創建一個新表。由於日期格式的原因,所以兩個date_time和time_time欄位是日期類型,見下圖,然後進入下一步。
注意事項:
SQL是結構化查詢語言的簡稱。SQL是一種功能完備的資料庫語言,它是一組用於資料庫的操作命令。在使用它時,您只需要發出命令「做什麼」,而「如何做」不是用戶考慮的問題。
SQL資料庫的數據體系結構基本上是三級結構,但是使用的術語不同於傳統的關系模型術語。在SQL中,關系模式(schema)稱為「基表」;內部模式稱為「存儲文件」;子模式(外部模式)稱為「視圖」;元組稱為行;該屬性稱為列。
9. WinSQL怎麼限日期
首先打開SQL SERVER的管理工具,然後我們選定一個資料庫,點擊新建查詢
接下來我們在查詢窗口中輸入如下的SQL語句,如下圖所示,將GETDATE方法得到的日期值和字元值拼接一下
運行以後會得到如下的錯誤提示,很明顯,SQL SERVER不允許我們將日期和字元值拼接
接下來我們利用CONVERT函數對日期值進行字元串轉換,如下圖所示
運行SQL語句以後,你就會在輸出結果中看到如下圖所示的輸出內容了
當然,如果你不想要上面的日期格式的話,你也可以自行選擇的,只要指定一下樣式ID即可,如下圖所示
7
綜上所述,SQL SERVER中的日期轉化為字元類型運用CONVERT函數即可,注意樣式ID的選擇。
10. SQL 如何查詢日期在一定范圍內的數據
select * from 表 where 日期欄位>='開始日期' and 日期欄位<='截止日期' and convert(char(8),日期欄位,108)>='開始時間' and convert(char(8),日期欄位,108)<='截止時間'。
SELECT * FROM 表明 WHERE 日期欄位名 BETWEEN '20130101' AND '20130130'。
例如:
select * from tb1 where dDate>='2010-11-05' and dDate<='2010-11-15'
and convert(char(8),dDate,108)>='8:00:00' and convert(char(8),dDate,108)<='9:00:00'.
select * from table1where year(d)=2010 and month(d)=7 and day(d) between 1 and 31
and (Datepart(hour,d)>=22 or Datepart(hour,d)<6)
(10)sql怎麼設置日期區間擴展閱讀:
SQL查詢日期:
今天的所有數據:select * from 表名 where DateDiff(dd,datetime類型欄位,getdate())=0
昨天的所有數據:select * from 表名 where DateDiff(dd,datetime類型欄位,getdate())=1
7天內的所有數據:select * from 表名 where DateDiff(dd,datetime類型欄位,getdate())<=7
30天內的所有數據:select * from 表名 where DateDiff(dd,datetime類型欄位,getdate())<=30
本月的所有數據:select * from 表名 where DateDiff(mm,datetime類型欄位,getdate())=0
本年的所有數據:select * from 表名 where DateDiff(yy,datetime類型欄位,getdate())=0
參考資料:SQL_網路