1. 程式人生 > >Mysql----時間處理

Mysql----時間處理

兩個日期的時間差函式

MySql計算兩個日期時間的差函式:
第一種:TIMESTAMPDIFF函式,需要傳入三個引數,第一個是比較的型別,可以比較FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR幾種型別,第二個和第三個引數是待比較的兩個時間,比較是後一個時間減前一個時間,具體用法如下:
SELECT TIMESTAMPDIFF(DAY,'2012-10-01','2013-01-13');
返回結果是104,這裡比較的是兩個時間的天數差;
第二種方法: DATEDIFF函式,就傳入兩個日期函式,比較的DAY天數,第一個引數減去第二個引數的天數值,具體用法如下:
SELECT DATEDIFF('2013-01-13','2012-10-01');

mysql查詢今天、昨天、7天、近30天、本月、上一月 資料

今天

select * from 表名 where to_days(時間欄位名) = to_days(now());

昨天

SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 時間欄位名) <= 1

7天

SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(時間欄位名)

近30天

SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL
30 DAY) <= date(時間欄位名)

本月

SELECT * FROM 表名 WHERE DATE_FORMAT( 時間欄位名, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )

上一月

SELECT * FROM 表名 WHERE PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( 時間欄位名, '%Y%m' ) ) =1

查詢本季度資料

select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(now());

查詢上季度資料

select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));

查詢本年資料

select * from `ht_invoice_information` where YEAR(create_date)=YEAR(NOW());

查詢上年資料

select * from `ht_invoice_information` where year(create_date)=year(date_sub(now(),interval 1 year));

查詢當前這周的資料

SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now());

查詢上週的資料

SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now())-1;

查詢距離當前現在6個月的資料

select name,submittime from enterprise where submittime between date_sub(now(),interval 6 month) and now();

查詢上個月的資料

select name,submittime from enterprise where date_format(submittime,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m')

select * from user where DATE_FORMAT(pudate,'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m') ; 

select * from user where WEEKOFYEAR(FROM_UNIXTIME(pudate,'%y-%m-%d')) = WEEKOFYEAR(now()) 

select * from user where MONTH(FROM_UNIXTIME(pudate,'%y-%m-%d')) = MONTH(now()) 

select * from user where YEAR(FROM_UNIXTIME(pudate,'%y-%m-%d')) = YEAR(now()) and MONTH(FROM_UNIXTIME(pudate,'%y-%m-%d')) = MONTH(now()) 

select * from user where pudate between  上月最後一天  and 下月第一天 

這裡寫圖片描述

相關推薦

MySql時間處理

mark tracking 格式化 mysq 處理 進行 art -m ng- 非常多時候。我們在進行Mysql數據庫查詢的時候就希望對時間進行處理,比方格式化或者其它操作,這邊就避免了再處理。而mysql也有非常多時間方面的處理函數,今天就簡單的做一個小的總結,給大家

Mysql----時間處理

兩個日期的時間差函式 MySql計算兩個日期時間的差函式: 第一種:TIMESTAMPDIFF函式,需要傳入三個引數,第一個是比較的型別,可以比較FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUAR

oracle --date-對應 mysql 時間類型的以及空值的處理

Oracle date mysql因為在做Oracle---->mysql的數據遷移的時候,發現Oracle中的date類型,對應的mysql的時間類型設置不當容易引起錯誤,特別是存在空值的時候 mysql 版本 5.6.40版本 mysql> desc t1;+-------------

mysql日期時間處理

nth gpo title interval 條件 spa time 處理 mil 獲得當前周的周一到周日 select subdate(curdate(),date_format(curdate(),‘%w‘)-1)//獲取當前日期在本周的周一 selec

mysql 時間型別精確到毫秒、微秒及其處理

一、MySQL 獲得毫秒、微秒及對毫秒、微秒的處理 MySQL 較新的版本中(MySQL 6.0.5),也還沒有產生微秒的函式,now() 只能精確到秒。 MySQL 中也沒有儲存帶有毫秒、微秒的日期時間型別。 但,奇怪的是 MySQL 已經有抽取(extract)微秒的函式。例如: select mi

mysql常用函式----日期和時間處理函式

對於每個型別擁有的值範圍以及並且指定日期何時間值的有效格式的描述見7.3.6 日期和時間型別。 這裡是一個使用日期函式的例子。下面的查詢選擇了所有記錄,其date_col的值是在最後30天以內: mysql> SELECT something FROM table

mysql 時間相關的處理

1、時間差比較 MySQL計算兩個日期時間的差函式: 第一種:TIMESTAMPDIFF函式,需要傳入三個引數,第一個是比較的型別,可以比較FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR幾種

mysql 時間型別精確到毫秒、微秒及其處理

select * from test where DATE_FORMAT(timess,'%Y-%m-%d %T:%f') between DATE_FORMAT('2010-12-01 06:03:16.233','%Y-%m-%d %T:%f') and DATE_FORMAT('2010-12-01

MySQL故障處理一例_Another MySQL daemon already running with the same unix socket

read mon 解決 roo blog local 啟動mysql style 處理 MySQL故障處理一例:“Another MySQL daemon already running with the same unix socket”。 [root@test-121

mysql事務處理

特殊 oot count-1 names 系列 種類 date ins 包括 MySQL的事務支持不是綁定在MySQL服務器本身,而是與存儲引擎相關1.MyISAM:不支持事務,用於只讀程序提高性能 2.InnoDB:支持ACID事務、行級鎖、並發 3.Berkeley

mysql 時間類型字段的分析

格式 ket func insert date() min 奇怪 比較 中文 日期類型 存儲空間 日期格式 日期範圍--------

c/c++日期時間處理與字符串string轉換

輸入輸出 一個數 代碼 string轉換 計算 字符 span 日期 時間轉化 在c/c++實際問題的編程中,我們經常會用到日期與時間的格式,在算法運行中,通常將時間轉化為int來進行計算,而處理輸入輸出的時候,日期時間的格式卻是五花八門,以各種標點空格相連或者不加標點。

MySQL : 事務處理

int pre 開啟事務 特點 nbsp rollback code margin 數據 【事務】一組SQL語句操作單元,組內所有SQL語句,完成一個業務。 若整組成功,意味著組內的全部操作都成功; 反之,若其中任何一條語

[ASP.NET應用到的時間處理函數]

pac () [1] ats tex 三種 etime net app 第一種形式: System.DateTime.Now.ToString("D"); //2017年6月2日 System.DateTime.Now.ToString("d");   

mysql 時間格式化

技術 src 得到 div 時間 技術分享 logs 分享 sel 背景 期望得到20170719這樣的時間字符串 步驟 select date_format(now(),‘%Y%m%d‘); mysql 時間格式化

sandglass(沙漏)——一個讓人解脫的python時間處理

blank git over google nco trac 通過 對象 pytho 在遊戲開發的過程中頻繁的須要跟時間相關的做處理。而python內置了好多個時間處理庫,datetime/date/time/calendar/timedelta等,細節繁多略具迷惑

談下mysql處理基礎

意思 fault pre 連接 發現 myisam 定量 ont 預編譯 傳統的操作數據庫方法有兩種: 先寫一條sql語句,然後通過mysqli->query($sql)去操作數據庫(此處使用的是mysqli擴展庫)。這樣操作並不會有什麽大的錯誤,但是當要插入上千條

mysql 時間日期函數類型和使用

sleep 指定日期 from 相減 _for date() mes ont edi -- mysql 時間日期函數類型和使用-- 1、DAY()、MONTH()、YEAR()——返回指定日期的天數、月數、年數;select day(CURDATE()) as ‘日‘ fr

MySQL 時間

mysql 相同 無符號 from ++ distinct values create ont 1.去掉重復的數值 select owner from pet; select distinct owner from pet; 2. CREATE TABLE t1

PHP與MYSQL事務處理

舉例 database 相同 bsp 幾分鐘 acl exists 細節 data PHP與MYSQL事務處理 $conn = mysql_connect(‘localhost‘,‘root‘,‘root‘) or die ("數據連接錯誤!!!"); mysql_