當前位置:首頁 » 編程語言 » sql語句日期起止
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql語句日期起止

發布時間: 2022-08-03 08:54:34

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 行)

Ⅱ 1.sql如何通過當前日期獲取上周,上上周,上上上周的起始日期(周一_周七)

sql語句獲取這些時間的語句都是一樣的,就是里邊的變數需要改變一下。下面具體看一下當前時間周的起始日期(以周一為例):
select DATEADD(week,DATEDIFF(week,0,getdate()),0)
上周起始:select dateadd(week,-1,DATEADD(week,DATEDIFF(week,0,getdate()),0))
上上周起始:select dateadd(week,-2,DATEADD(week,DATEDIFF(week,0,getdate()),0))
上上上周起始:select dateadd(week,-3,DATEADD(week,DATEDIFF(week,0,getdate()),0))。星期二到星期天以此類推,就是把零該改為1-6即可。
拓展資料:
一、 sql語言的簡介
(一) SQL語言1974年由Boyce和Chamberlin提出,並首先在IBM公司研製的關系資料庫系統SystemR上實現。由於它具有功能豐富、使用方便靈活、語言簡潔易學等突出的優點,深受計算機工業界和計算機用戶的歡迎。
(二) 1980年10月,經美國國家標准局(ANSI)的資料庫委員會X3H2批准,將SQL作為關系資料庫語言的美國標准,同年公布了標准SQL,此後不久,國際標准化組織(ISO)也作出了同樣的決定。
(三) SQL從功能上可以分為3部分:數據定義、數據操縱和數據控制。SQL的核心部分相當於關系代數,但又具有關系代數所沒有的許多特點,如聚集、資料庫更新等。它是一個綜合的、通用的、功能極強的關系資料庫語言。
二、 sql的特點
(一) 數據描述、操縱、控制等功能一體化。
(二) 兩種使用方式,統一的語法結構。SQL有兩種使用方式。一是聯機交互使用,這種方式下的SQL實際上是作為自含型語言使用的。另一種方式是嵌入到某種高級程序設計語言(如C語言等)中去使用,所用語言的語法結構基本上是一致的。
(三) 高度非過程化。SQL是一種第四代語言(4GL),用戶只需要提出干什麼,無須具體指明怎麼干,像存取路徑選擇和具體處理操作等均由系統自動完成。
(四) 語言簡潔,易學易用。盡管SQL的功能很強,但語言十分簡潔,核心功能只用了9個動詞。SQL的語法接近英語口語,所以,用戶很容易學習和使用。
三、 SQL功能
(一) SQL數據定義功能:能夠定義資料庫的三級模式結構,即外模式、全局模式和內模式結構。在SQL中,外模式又叫做視圖(View),全局模式簡稱模式(Schema),內模式由系統根據資料庫模式自動實現,一般無需用戶過問。
(二) SQL數據操縱功能:包括對基本表和視圖的數據插入、刪除和修改,特別是具有很強的數據查詢功能。
(三) SQL的數據控制功能:主要是對用戶的訪問許可權加以控制,以保證系統的安全性。

Ⅲ SQL 語句,日期問題

把你那個欄位加函數索引吧,
select * from 表名
where to_date(欄位名稱,'yyyy-mm-dd hh24:mi:ss') < to_date('2008-08-30','yyyy-mm-dd hh24:mi:ss')
and to_date(欄位名稱,'yyyy-mm-dd hh24:mi:ss') >= to_date('2007-08-30','yyyy-mm-dd hh24:mi:ss')

比較符一開一閉

Ⅳ 在sql中怎麼取當前日期和當前日期的前一天日期

在sql中怎麼取當前日期和當前日期的前一天日期
select dateadd(day, -1, getdate()) 減少1天。 DATEADD函數,可以增加/減少指定的小時、分、天、年、月、周等。 select dateadd(day, 2, getdate()) --增加兩天。 select dateadd(year, -2, getdate()) --減少兩年。

Ⅳ 這個sql語句里日期如何加上起始時間和終止時間

1、首先聲明兩個時間變數:起始時間和結束時間

2、將時間變數加入到where的篩選條件中

--起始時間
Declare@start_datedatetime
set@start_date='2018-03-28'
--結束時間
Declare@end_datedatetime
set@end_date='2018-04-18'

declare@fengongsivarchar(50)
set@fengongsi='無錫分公司'

selectDingDanBianHao訂單編號,ShouHouCiShu售後次數,riqi日期,danhao單號,b.fengongsias分公司
fromSH_SHOUHOUWEITUODANa,YW_FENGONGSIb
wherea.suoshufengongsi=b.GIDandRIQI<@end_dateandRIQI>@start_dateandfengongsi=@fengongsi

Ⅵ sql語句(關於日期)

你用的是 SQL Server 資料庫?

SELECT'年'AS'日期部分',DATEDIFF(yy,'2012-12-21',GETDATE())AS[數值]
UNIONALL
SELECT'季度'AS'日期部分',DATEDIFF(qq,'2012-12-21',GETDATE())AS[數值]
UNIONALL
SELECT'月'AS'日期部分',DATEDIFF(mm,'2012-12-21',GETDATE())AS[數值]
UNIONALL
SELECT'日'AS'日期部分',DATEDIFF(dd,'2012-12-21',GETDATE())AS[數值]
UNIONALL
SELECT'周'AS'日期部分',DATEDIFF(ww,'2012-12-21',GETDATE())AS[數值]
UNIONALL
SELECT'時'AS'日期部分',DATEDIFF(hh,'2012-12-21',GETDATE())AS[數值]
UNIONALL
SELECT'分'AS'日期部分',DATEDIFF(mi,'2012-12-21',GETDATE())AS[數值]
UNIONALL
SELECT'秒'AS'日期部分',DATEDIFF(ss,'2012-12-21',GETDATE())AS[數值]
go

日期部分數值
---------------
年2
季度5
月13
日396
周57
時9513
分570780
秒34246838

(8行受影響)

Ⅶ SQL根據起始日期和終止日期取值的存儲過程語句不知道怎麼寫了

這個表設計的有問題。Day列應該用日期值,沒有年和月是無法正常查詢的。
SQL 如下:
Select UserName from Table
Where Day >= @起始日期
And Day <= @終止日期
And Attack=False

Ⅷ sql 語句 修改時間

1、創建測試表,

create table test_date_add(id number, start_time date, end_time date);

Ⅸ 請教高手列舉出sql語句中所有有關日期 、時間的用法 謝謝

SQL語句中時間函數的應用Date 函數
描述:返回當前系統日期。
語法Date

DateAdd 函數
描述:返回已添加指定時間間隔的日期。
語法DateAdd(interval, number, date)
interval: 必選。字元串表達式,表示要添加的時間間隔。有關數值,請參閱「設置」部分。
number: 必選。數值表達式,表示要添加的時間間隔的個數。數值表達式可以是正數(得到未來的日期)或負數(得到過去的日期)。
date: 必選。Variant 或要添加 interval 的表示日期的文字。
interval 參數可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日數) 、d (日) 、w (一周的日數) 、ww (周) 、h (小時) 、n (分鍾) 、s (秒)
說明:可用 DateAdd 函數從日期中添加或減去指定時間間隔。例如可以使用 DateAdd 從當天算起 30 天以後的日期或從現在算起 45分鍾以後的時間。要向 date 添加以「日」為單位的時間間隔,可以使用「一年的日數」(「y」)、「日」(「d」)或「一周的日數」(「w」)。
DateAdd 函數不會返回無效日期。如下示例將 95 年 1 月 31 日加上一個月:
NewDate = DateAdd("m", 1, "31-Jan-95")
在這個例子中,DateAdd 返回 95 年 2 月 28 日,而不是 95 年 2 月 31 日。如果 date 為 96 年 1 月 31 日,則返回 96 年 2 月 29 日,這是因為 1996 是閏年。
如果計算的日期是在公元 100 年之前則會產生錯誤。
如果 number 不是 Long 型值,則在計算前四捨五入為最接近的整數。

DateDiff 函數
描述:返回兩個日期之間的時間間隔。
語法DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear> )
interval: 必選。字元串表達式,表示用於計算 date1 和 date2 之間的時間間隔。有關數值,請參閱「設置」部分。
date1, date2: 必選。日期表達式。用於計算的兩個日期。
firstdayofweek: 可選。指定星期中第一天的常數。如果沒有指定,則默認為星期日。有關數值,請參閱「設置」部分。
firstweekofyear: 可選。指定一年中第一周的常數。如果沒有指定,則默認為 1 月 1 日所在的星期。有關數值,請參閱「設置」部分。
interval 參數可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日數) 、d (日) 、w (一周的日數) 、ww (周) 、h (小時) 、n (分鍾) 、s (秒)
firstdayofweek 參數可以有以下值:
(以下分別為:常數 值 描述)
vbUseSystem 0 使用區域語言支持 (NLS) API 設置。
vbSunday 1 星期日(默認)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
firstweekofyear 參數可以有以下值:
(以下分別為:常數 值 描述)
vbUseSystem 0 使用區域語言支持 (NLS) API 設置。
vbFirstJan1 1 由 1 月 1 日所在的星期開始(默認)。
vbFirstFourDays 2 由在新年中至少有四天的第一周開始。
vbFirstFullWeek 3 由在新的一年中第一個完整的周開始。
說明DateDiff 函數用於判斷在兩個日期之間存在的指定時間間隔的數目。例如可以使用 DateDiff 計算兩個日期相差的天數,或者當天到當年最後一天之間的星期數。
要計算 date1 和 date2 相差的天數,可以使用「一年的日數」(「y」)或「日」(「d」)。當 interval為「一周的日數」(「w」)時,DateDiff 返回兩個日期之間的星期數。如果 date1 是星期一,則 DateDiff 計算到 date2之前星期一的數目。此結果包含 date2 而不包含 date1。如果 interval 是「周」(「ww」),則 DateDiff函數返回日歷表中兩個日期之間的星期數。函數計算 date1 和 date2 之間星期日的數目。如果 date2 是星期日,DateDiff將計算 date2,但即使 date1 是星期日,也不會計算 date1。
如果 date1 晚於 date2,則 DateDiff 函數返回負數。
firstdayofweek 參數會對使用「w」和「ww」間隔符號的計算產生影響。
如果 date1 或 date2 是日期文字,則指定的年度會成為日期的固定部分。但是如果 date1 或 date2 被包括在引號 (" ")中並且省略年份,則在代碼中每次計算 date1 或 date2 表達式時,將插入當前年份。這樣就可以編寫適用於不同年份的程序代碼。
在 interval 為「年」(「yyyy」)時,比較 12 月 31 日和來年的 1 月 1 日,雖然實際上只相差一天,DateDiff 返回 1 表示相差一個年份。

DatePart 函數
描述:返回給定日期的指定部分。
語法DatePart(interval, date[, firstdayofweek[, firstweekofyear> )
DatePart: 函數的語法有以下參數:
interval: 必選。字元串表達式,表示要返回的時間間隔。有關數值,請參閱「設置」部分。
date: 必選。要計算的日期表達式。
firstdayof week: 可選。指定星期中的第一天的常數。如果沒有指定,則默認為星期日。有關數值,請參閱「設置」部分。
firstweekofyear: 可選。指定一年中第一周的常數。如果沒有指定,則默認為 1 月 1 日所在的星期。有關數值,請參閱「設置」部分。
interval 參數可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日數) 、d (日) 、w (一周的日數) 、ww (周) 、h (小時) 、n (分鍾) 、s (秒)
firstdayofweek 參數可以有以下值:
(以下分別為:常數 值 描述)
vbUseSystem 0 使用區域語言支持 (NLS) API 設置。
vbSunday 1 星期日(默認)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
firstweekofyear 參數可以有以下值:
(以下分別為:常數 值 描述)
vbUseSystem 0 使用區域語言支持 (NLS) API 設置。
vbFirstJan1 1 由 1 月 1 日所在的星期開始(默認)。
vbFirstFourDays 2 由在新年中至少有四天的第一周開始。
vbFirstFullWeek 3 由在新的一年中第一個完整的周(不跨年度)開始。
說明DatePart 函數用於計算日期並返回指定的時間間隔。例如使用 DatePart 計算某一天是星期幾或當前的時間。
firstdayofweek 參數會影響使用「w」和「ww」間隔符號的計算。
如果 date 是日期文字,則指定的年度會成為日期的固定部分。但是如果 date 被包含在引號 (" ") 中,並且省略年份,則在代碼中每次計算 date 表達式時,將插入當前年份。這樣就可以編寫適用於不同年份的程序代碼。
DateSerial 函數
描述:對於指定的年、月、日,返回 Date 子類型的 Variant。
語法DateSerial(year, month, day)
year: 從 100 到 9999 之間的數字或數值表達式。
month: 任意數值表達式。
day: 任意數值表達式。
說明:要指定日期,如 1991 年 12 月 31 日,DateSerial 函數中每個參數的取值范圍都應該是可接受的;即日的取值應在 1 和31 之間,月的取值應在 1 和 12 之間。但是,也可以使用表示某日之前或之後的年、月、日數目的數值表達式為每個參數指定相對日期。
以下樣例中使用了數值表達式代替絕對日期。在這里,DateSerial 函數返回 1990 年 8 月 1 日之前十年 (1990 - 10) 零兩個月 (8 - 2) 又一天 (1 - 1) 的日期:即 1980 年 5 月 31 日。
DateSerial(1990 - 10, 8 - 2, 1 - 1)
對於 year 參數,若取值范圍是從 0 到 99,則被解釋為 1900 到 1999 年。對於此范圍之外的 year 參數,則使用四位數字表示年份(例如 1800 年)。
當任何一個參數的取值超出可接受的范圍時,則會適當地進位到下一個較大的時間單位。例如,如果指定了 35天,則這個天數被解釋成一個月加上多出來的日數,多出來的日數取決於其年份和月份。但是如果參數值超出 -32,768 到 32,767的范圍,或者由三個參數指定(無論是直接還是通過表達式指定)的日期超出了可以接受的日期范圍,就會發生錯誤。

Datevalue 函數
描述:返回 Date 子類型的 Variant。
語法datevalue(date)
date 參數應是字元串表達式,表示從 100 年 1 月 1 日到 9999 年 12 月 31 日中的一個日期。但是,date 也可以是表示上述范圍內的日期、時間或日期時間混合的任意表達式。
說明:如果 date 參數包含時間信息,則 Datevalue 不會返回時間信息。但是如果 date 包含無效的時間信息(如 "89:98"),就會出現錯誤。
如果 date 是某一字元串,其中僅包含由有效的日期分隔符分隔開的數字,則 Datevalue將會根據為系統指定的短日期格式識別月、日和年的順序。Datevalue還會識別包含月份名稱(無論是全名還是縮寫)的明確日期。例如,除了能夠識別 12/30/1991 和 12/30/91 之外,Datevalue還能識別 December 30, 1991 和 Dec 30, 1991。
如果省略了 date 的年份部分,Datevalue 將使用計算機系統日期中的當前年份。

Day 函數
描述:返回 1 到 31 之間的一個整數(包括 1 和31),代表某月中的一天。
語法Day(date)
date 參數是任意可以代表日期的表達式。如果 date 參數中包含 Null,則返回 Null。

FormatDateTime 函數
描述:返回表達式,此表達式已被格式化為日期或時間。
語法:FormatDateTime(Date[,NamedFormat])
Date: 必選。要被格式化的日期表達式。
NamedFormat: 可選。指示所使用的日期/時間格式的數值,如果省略,則使用 vbGeneralDate。
NamedFormat 參數可以有以下值:
(以下分別為:常數 值 描述)
vbGeneralDate 0 顯示日期和/或時間。如果有日期部分,則將該部分顯示為短日期格式。如果有時間部分,則將該部分顯示為長時間格式。如果都存在,則顯示所有部分。
vbLongDate 1 使用計算機區域設置中指定的長日期格式顯示日期。
vbShortDate 2 使用計算機區域設置中指定的短日期格式顯示日期。
vbLongTime 3 使用計算機區域設置中指定的時間格式顯示時間。
vbShortTime 4 使用 24 小時格式 (hh:mm) 顯示時間。

Hour 函數
描述:返回 0 到 23 之間的一個整數(包括 0 和 23),代表一天中的某一小時。
語法:Hour(time)
time 參數是任意可以代表時間的表達式。如果 time 參數中包含 Null,則返回 Null。

Minute 函數
描述:返回 0 到 59 之間的一個整數(包括 0 和59),代表一小時內的某一分鍾。
語法:Minute(time)
time 參數是任意可以代表時間的表達式。如果 time 參數包含 Null,則返回 Null。

Month 函數
描述:返回 1 到 12 之間的一個整數(包括 1 和 12),代表一年中的某月。
語法:Month(date)
date 參數是任意可以代表日期的表達式。如果 date 參數中包含 Null,則返回 Null。

MonthName 函數
描述:返回表明指定月份的字元串。
語法:MonthName(month[, abbreviate])
month: 必選。月份的數值定義。例如,一月是 1,二月是 2,以此類推。
abbreviate: 可選。Boolean 值,表明月份名稱是否簡寫。如果省略,默認值為 False,即不簡寫月份名稱。

Now 函數
描述:根據計算機系統設定的日期和時間返回當前的日期和時間值。
語法:Now

Second 函數
描述:返回 0 到 59 之間的一個整數(包括 1 和 59),代表一分鍾內的某一秒。
語法:Second(time)
time 參數是任意可以代表時間的表達式。如果 time 參數中包含 Null,則返回 Null。

Time 函數
描述:返回 Date 子類型 Variant,指示當前系統時間。
語法:Time

TimeSerial 函數
描述:返回一個 Date 子類型的 Variant,含有指定時、分、秒的時間。
語法:TimeSerial(hour, minute, second)
hour: 其值為從 0 (12:00 A.M.) 到 23 (11:00 P.M.) 的數值或數值表達式。
minute: 任意數值表達式。
second: 任意數值表達式。
說明:要指定一時刻,如 11:59:59,TimeSerial 的參數取值應在可接受的范圍內;也就是說,小時應介於 0-23 之間,分和秒應介於0-59之間。但是,可以使用數值表達式為每個參數指定相對時間,這一表達式代表某時刻之前或之後的時、分或秒數。以下樣例中使用了表達式代替絕對時間數。TimeSerial 函數返回中午之前六小時 (12 - 6) 十五分鍾的時間 (-15),即 5:45:00 A.M.。
TimeSerial(12 - 6, -15, 0)
當任何一個參數的取值超出可接受的范圍時,它會正確地進位到下一個較大的時間單位中。例如,如果指定了 75分鍾,則這個時間被解釋成一小時十五分鍾。但是,如果任何一個參數值超出 -32768 到 32767的范圍,就會導致錯誤。如果使用三個參數直接指定的時間或通過表達式計算出的時間超出可接受的日期范圍,也會導致錯誤。

Timevalue 函數
描述:返回包含時間的 Date 子類型的 Variant。
語法:Timevalue(time)
time參數通常是代表從 0:00:00 (12:00:00 A.M.) 到 23:59:59 (11:59:59 P.M.) 的字元串表達式(包括0:00:00 和 23:59:59)。不過,time 也可以是代表該范圍內任何時間的表達式。如果 time 參數包含 Null,則返回Null。
說明:可以採用 12 或 24 小時時鍾格式輸入時間。例如 "2:24PM" 和 "14:24" 都是有效的 time 參數。
如果 time 參數包含日期信息, Timevalue 函數並不返回日期信息。然而,如果 time 參數包含無效的日期信息,則會出現錯誤。

Weekday 函數
描述:返回代表一星期中某天的整數。
語法:Weekday(date, [firstdayofweek])
date: 可以代表日期的任意表達式。如果 date 參數中包含 Null,則返回 Null。
firstdayofweek: 指定星期中第一天的常數。如果省略,默認使用 vbSunday。
firstdayofweek 參數有如下設置:
(以下分別為:常數 值 描述)
vbUseSystem 0 使用區域語言支持 (NLS) API 設置。
vbSunday 1 星期日
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
Weekday 函數返回如下值:
(以下分別為:常數 值 描述)
vbSunday 1 星期日
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六

WeekdayName 函數
描述:返回一個字元串,表示星期中指定的某一天。
語法:WeekDayName(weekday, abbreviate, firstdayofweek)
weekday: 必選。星期中某天的數值定義。各天的數值定義取決於 firstdayofweek 參數設置。
abbreviate: 可選。Boolean 值,指明是否縮寫表示星期各天的名稱。如果省略, 默認值為 False,即不縮寫星期各天的名稱。
firstdayofweek: 可選。指明星期第一天的數值。關於數值,請參閱「設置」部分。
firstdayofweek 參數有以下值:
(以下分別為:常數 值 描述)
vbUseSystem 0 使用區域語言支持 (NLS) API 設置。
vbSunday 1 星期日(默認)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六

Year 函數
描述:返回一個代表某年的整數。
語法:Year(date)
date 參數是任意可以代表日期的參數。如果 date 參數中包含 Null,則返回 Null