❶ sql 如何取日期中的年月
需要設置函數公式select * from 表名 where Convert(varchar(10),日期欄位,120)='2008-12-15'即可輸出。
如獲取年月日,設置 select CONVERT(varchar(100), GETDATE(), 23)
輸出2017-03-06 ,如需獲取年月
select CONVERT(varchar(7), GETDATE(), 120)
輸出變為2017-03。
拓展資料
1、結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統;同時也是資料庫腳本文件的擴展名。
2、結構化查詢語言包含6個部分:數據查詢語言(DQL:Data Query Language);數據操作語言(DML:Data Manipulation Language);事務處理語言(TPL);數據控制語言(DCL);數據定義語言(DDL);和指針控制語言(CCL)。
資料來源:SQL 教程-函數設置
❷ SQL請教大家一個日期的加減法
ql語句處理時間——日期加減天數如下:
select date_add(now(), interval 1 day); -- 加1天
select date_add(now(), interval 1 hour); -- 加1小時
select date_add(now(), interval 1 minute); -- 加1分鍾
select date_add(now(), interval 1 second); -- 加1秒
select date_add(now(), interval 1 microsecond);-- 加1毫秒
select date_add(now(), interval 1 week);-- 加1周
select date_add(now(), interval 1 month);-- 加1月
select date_add(now(), interval 1 quarter);-- 加1季
select date_add(now(), interval 1 year);-- 加1年
(2)sql時間相減取月份擴展閱讀
SQL中常用日期函數
1、GETDATE() 返回當前系統日期;
SELECT GETDATE()
2、DATEADD(日期部分,常數,日期) 返回將日期的指定日期部分加常數後的結果返回;
--常數為正
SELECT DATEADD(YY,1,GETDATE())
--等同於
SELECT DATEADD(YEAR,1,GETDATE())
--常數為負數
SELECT DATEADD(YY,-2,GETDATE())
--常數為小數(直接捨去小數部分)
SELECT DATEADD(YY,2.4,GETDATE())
SELECT DATEADD(YY,2.5,GETDATE())
SELECT DATEADD(YY,2.6,GETDATE())
❸ SQL里怎麼把日期截取為月份
把日期截取為月份有以下幾種辦法:
1、日期為日期格式,這種最簡單,使用Month()函數即可獲取月份,如:
select month(getdate()) from al2、日期為yyyy-mm-dd格式的文本,這種情況下需要轉換成日期格式再截取,如:
select TO_CHAR(to_date('2013-01-01', 'yyyy-MM-dd'), 'yyyyMM') dateStr from al3、日期格式為其他格式,如yyyymmdd或yyyy/mm/dd的,此類格式類似第二種格式可以用類似的語句進行查詢,只是轉換成日期的時候的格式不一樣。
註:以上SQL均基於ORACLE資料庫
❹ 只用年份和月份相減,得到相差月數,sql語句如何寫
可以把年月轉為日期:年+'-'+月+'-01',月份如果是純數字,注意10以下的要補0。然後用datediff取月份差
datediff(m,year1+'-'+case when mon1<10 then '0'+mon1 else mon1 end+'-01',year2+'-'+case when mon2<10 then '0'+mon2 else mon2 end+'-01')
年份差*12+月份差
(year2-year1)*12+(mon2-mon1)
❺ sql數值型日期怎麼相減得到月份差
select datediff(year, 開始日期,結束日期); --兩日期間隔年
select datediff(quarter, 開始日期,結束日期); --兩日期間隔季
select datediff(month, 開始日期,結束日期); --兩日期間隔月
select datediff(day, 開始日期,結束日期); --兩日期間隔天
select datediff(week, 開始日期,結束日期); --兩日期間隔周
select datediff(hour, 開始日期,結束日期); --兩日期間隔小時
select datediff(minute, 開始日期,結束日期); --兩日期間隔分
select datediff(second, 開始日期,結束日期); --兩日期間隔秒
❻ SQL里怎麼把日期截取為月份
當我們處理日期時,最難的任務恐怕是確保所插入的日期的格式,與資料庫中日期列的格式相匹配。
只要您的數據包含的只是日期部分,運行查詢就不會出問題。但是,如果涉及時間部分,情況就有點復雜了。
在討論日期查詢的復雜性之前,我們先來看看最重要的內建日期處理函數。
MySQL Date 函數:
❼ SQL取系統時間的前一個月的月份和年份
SQL SERVER 提供了一些時間函數:
取當前時間:select getdate()
取前一個月的時間:SELECT DATEADD(MONTH,-1,GETDATE()) 月份減一個月
取年份:SELECT YEAR( DATEADD(MONTH,-1,GETDATE())),Year 取年份
取月份:SELECT MONTH( DATEADD(MONTH,-1,GETDATE())) ,month 取月份。
如上,可通過對日期函數的各種組合,來達到目標。
❽ sql如何按日期中的月份查詢
sql按日期中的月份查詢如下:
SQL Server
select * from [data] where DATEPART(m,[date])=2
Access
select * from [data] where DATEPART('m',[date])=2
說明:
DATEPART(datepart,date)
返回表示指定日期的指定部分的整數
datepart 要取得的日期部分
- m 表示月份,d表示日,yyyy表示年
date 日期表達式
舉例:
--以2013-12-10 12:56:55為例
--convert(nvarchar(10),CreateDate,120) => 2013-12-10
--DATEPART(month,CreateDate) => 12
--DATEPART(year,CreateDate) => 2013
--月
select datepart(MONTH,'2013-06-08')
select datepart(mm,'2013-06-08')
select datepart(m,'2013-06-08')
(8)sql時間相減取月份擴展閱讀:
相關函數
SQL Aggregate 函數
SQL Aggregate 函數計算從列中取得的值,返回一個單一的值。
有用的 Aggregate 函數:
AVG() - 返回平均值
COUNT() - 返回行數
FIRST() - 返回第一個記錄的值
LAST() - 返回最後一個記錄的值
MAX() - 返回最大值
MIN() - 返回最小值
SUM() - 返回總和
SQL Scalar 函數
SQL Scalar 函數基於輸入值,返回一個單一的值。
有用的 Scalar 函數:
UCASE() - 將某個欄位轉換為大寫
LCASE() - 將某個欄位轉換為小寫
MID() - 從某個文本欄位提取字元
LEN() - 返回某個文本欄位的長度
ROUND() - 對某個數值欄位進行指定小數位數的四捨五入
NOW() - 返回當前的系統日期和時間
❾ sql 中日期相減問題
select months_between(date1,date2)/12 from al --months_between(date1,date2)可以求出兩日期相差的月份,然後再 /12 得出年數,不過怎麼求整要看你數據和要求了,四捨五入用round