mysql資料庫的日期資料處理 date_format與str_to_date的使用細節
首先建立一個簡單的資料表,表名testDateFunction,表結構如下所示
再向資料表中插入幾條測試資料,由於本文重點是記錄關於日期函式的用法,資料插入過程就不在贅述,表資料如下所示:+-------+---------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | time | date | YES | | NULL | | +-------+---------+------+-----+---------+----------------+
+----+------------+
| id | time |
+----+------------+
| 1 | 2009-09-26 |
| 2 | 2017-01-03 |
| 3 | 2017-08-07 |
+----+------------+
一·將資料庫中的date資料轉換為我們想要的String型別
需要使用的函式是:date_format(date,format),其中,date是需要轉化的日期資料,format定義的是轉換格式。
例:
1.將日期資料按照 年-月-日 時:分:秒 的格式輸出
format格式:
年份
%Y ----->年份,顯示4位,如2017;
%y ----->年份,顯示2位,如2017;
select date_format(now(),'%Y'); ---> 2017
select date_format(now(),'%y'); ---> 17
月份
%m ----->月份 阿拉伯數字顯示,佔兩位字元,01-12;
%M ----->月份 英文全文顯示,January-December;
%b ----->月份 英文縮略顯示,Jan-Dec;
%c ----->月份 阿拉伯數字顯示,1-12;
select date_format(now(),'%Y-%m'); ---> 2017-08select date_format(now(),'%Y-%M'); ---> 2017-Augustselect date_format(now(),'%Y-%b'); ---> 2017-Augselect date_format(now(),'%Y-%c'); ---> 2017-8
日
%d ----->日 阿拉伯顯示:00-31
%D----->日 帶有英文字尾:1st-31th
%e----->日 阿拉伯顯示:1-31
%j ----->日 這一天在這個年份的序號:001-366
select date_format(now(),'%Y-%m-%d'); ---> 2017-08-07select date_format(now(),'%Y-%m-%D'); ---> 2017-08-7thselect date_format(now(),'%Y-%m-%e'); ---> 2017-08-7select date_format(now(),'%Y-%m-%d %j'); ---> 2017-08-07 219 ps:表示2017年8月7日是2017年的第219天
時、分、秒
%H ----> 時 顯示格式 :00-23
%h----> 時 顯示格式 : 01-12
%I ----> 時 顯示格式 :01-12
%k----> 時 顯示格式 :0-23
%l ----> 時 顯示格式 :1-12
select date_format(now(),'%Y-%m-%d %H'); ---> 2017-08-07 16 ps:下午4點
select date_format(now(),'%Y-%m-%d %h'); ---> 2017-08-07 04
select date_format(now(),'%Y-%m-%d %I'); ---> 2017-08-07 04
select date_format(now(),'%Y-%m-%d %k'); ---> 2017-08-07 16 ps:當小於10時,顯示為1-9,而不是01-09
select date_format(now(),'%Y-%m-%d %l'); ---> 2017-08-07 4
分: %i:00-59
select date_format(now(),'%Y-%m-%d %H:%i'); ---> 2017-08-07 16:47 ps:下午4點47分
秒: %S:00-59 %s:00-59
select date_format(now(),'%Y-%m-%d %H:%i:%S'); ---> 2017-08-07 16:47:53 ps:下午4點47分53秒
select date_format(now(),'%Y-%m-%d %H:%i:%s'); ---> 2017-08-07 16:47:53 ps:下午4點47分53秒
微秒 %f
select date_format(now(),'%Y-%m-%d %H:%i:%S %f'); ---> 2017-08-07 16:54:22 000000
12/24小時制
AM/PM ------->%pselect date_format(now(),'%Y-%m-%d %H:%i:%S %p'); ---> 2017-08-07 16:57:21 PM12小時制時間:%r: select date_format(now(),'%Y-%m-%d %r'); ---> 2017-08-07 04:57:59 PM 24小時制時間: %T: 14:02:44select date_format(now(),'%Y-%m-%d %T'); ---> 2017-08-07 17:15:16
周
%W ----> 周的英文顯示 monday-sunday%w ----> 周的阿拉伯顯示 :0(星期日)-6(星期六)
%a ----> 周的英文縮略顯示:Mon-sun
select date_format(now(),'%Y-%m-%d %H:%i:%s %W'); ---> 2017-08-07 17:19:15 Mondayselect date_format(now(),'%Y-%m-%d %H:%i:%s %w'); ---> 2017-08-07 17:20:13 1 ps:1表示週一select date_format(now(),'%Y-%m-%d %H:%i:%s %a'); ---> 2017-08-07 17:19:15 Mon
二·將字串型別轉換為date型別
使用函式str_to_date (str,format),其中,format格式依然如同上述所示。
值得注意的是,str的格式需要和format的格式保持一致,例如 str_to_date('2017-08-07 16:56:12',‘%Y-%m-%d %H:%i:%s’),若是前後不一致則會報錯。不再贅述。
相關推薦
mysql資料庫的日期資料處理 date_format與str_to_date的使用細節
首先建立一個簡單的資料表,表名testDateFunction,表結構如下所示 +-------+---------+------+-----+---------+----------------+
《MySQL必知必會》學習筆記(二)、MySQL資料庫中資料的檢索與搜尋
一、對檢索結果排序 1.1 簡單排序 在MySQL中使用ORDER BY子句對檢索出的資料進行排序,而且預設為遞增排序。若想以遞減方式排序,需要在排列資料後面加上DESC關鍵字。利用《MySQL必知必會》中的資料表,實驗如下: SELE
mysql資料庫,日期格式轉換及日期間的計算 date_format,date_sub
今天做了一個統計積分的功能,需要統計昨日,今日和本月的積分 想到優化sql解決問題 轉換日期格式 DATE_FORMAT(date,格式) 函式 本來想用to_date和to_char來轉換日期的格式,但是在mysql似乎沒有這兩個函式 date
27.logstash-output-mongodb實現Mysql到Mongodb資料同步(ES與非關係型資料庫同步)
本文主要講解如何通過logstash-output-mongodb外掛實現Mysql與Mongodb資料的同步。源資料儲存在Mysql,目標資料庫為非關係型資料庫Mongodb。0、前提1)已經安裝好源資料庫:Mysql; 2)已經安裝好目的資料庫:Mongodb; 3)已經
MySQL資料庫 之 插入、更新與刪除資料
一、插入資料 MySQL 中使用 insert 語句來向資料庫表中插入新的資料記錄。 ☆ 為表的所有欄位插入資料 insert into tb_name (col_list) values (value_list) 建立一個數據表 person
MIT-BIH資料庫ECG心電圖資料處理畫圖與心率計算(附詳細註釋)
本文程式碼依據rddata.m檔案編寫,關於資料結構的格式、意義,我在理解後都寫在註釋裡了,有需要的朋友可以認真看一下。歡迎交流。本文處理的資料是MIT-BIH資料庫100.hea和100.dat檔案,利用的是matlab工具。%檔名稱 : ECG_Plot %實現功能
【oracle 處理日期型資料】常見日期資料處理
獲得當前日期 sysdate() 為日期加上特定月份 add_months(end_date,1) 求日期所在月的最後一天 last_day() 計算兩個日期所差的月數 months_between() 計算日期之後的一週之內的日期 next_day()
阿里P8架構師談:MySQL資料庫的索引原理、與慢SQL優化的5大原則
MySQL憑藉著出色的效能、低廉的成本、豐富的資源,已經成為絕大多數網際網路公司的首選關係型資料庫。雖然效能出色,但所謂“好馬配好鞍”,如何能夠更好的使用它,已經成為開發工程師的必修課,我們經常會從職位描述上看到諸如“精通MySQL”、“SQL語句優化”、“瞭解資料庫原理”等要求。 我們知道一般
scrapy框架 基於mysql資料庫儲存資料方法、案例
流程思路 將解析資料存到items物件 使用yield 將items交給管道檔案處理 在管道檔案pipelines編寫程式碼儲存到資料庫 在setting配置檔案開啟管道 案例 items中 按照格式定義欄位 import s
mysql資料庫的資料約束
/*資料約束*/ CREATE TABLE user01 ( uid INT NOT NULL,/*非空約束*/ PRIMARY KEY /*主鍵約束*/ AUTO_INCREMENT /*
使用binlog日誌恢復MySQL資料庫刪除資料的方法
binlog日誌簡介: binlog 就是binary log,二進位制日誌檔案,這個檔案記錄了MySQL所有的DDL和DML(除了資料查詢語句)語句,以事件形式記錄,還包含語句所執行的消耗的時間。 binlog日誌包括兩類檔案: 1)二進位制日誌索引檔案(檔名字尾為.index):用於
MySQL---當Java遇上MySQL⑧---資料庫元資料、生成Excel檔案
玩轉資料庫元資料主要有兩個類: * java.sql.DatabaseMetaData 和 java.sql.ResultSetMetaData * DatabaseMetaData:可以獲得驅動資訊、所有資料庫名,所有表格名(檢視、儲存過程等)
Pandas日期資料處理:如何按日期篩選、顯示及統計資料
前言 pandas有著強大的日期資料處理功能,本期我們來了解下pandas處理日期資料的一些基本功能,主要包括以下三個方面: 按日期篩選資料 按日期顯示資料 按日期統計資料 執行環境為 windows系統,64位,python3.5。 1 讀取並整理資料 首先
mysql資料庫插入資料顯示Extracted SQL state class '22' from value '22001'解決辦法
Extracted SQL state class ‘22’ from value ‘22001’ 問題描述 最近在完成一個專案時,需要實現在網頁從excel匯入資料,然後儲存到資料庫中.在測試階段時發現執行沒有任何問題,但是實際部署過程中發現,使用者上傳exc
【MVC】.NET實踐(三)—對資料庫的資料進行刪除與修改
在主介面新增修改和刪除的超連結(Index.cshtml) <table id="tbList"> <tr> <th>id&l
VS2013使用MySQL資料庫,資料集中如何填充帶引數的sql語句
本人在網上查詢一番後,發現均無法實現效果,之前的專案使用Oracle,sql傳參類似“......where id = :id”,然後突然想到直接tableAdapter裡面新建一個update查詢,不就知道使用MySQL資料庫時sql傳參了嘛。以上思路,下給例子:
mysql 連結,資料處理
** * Created by Administrator on 2018/1/28. */ object LogsAnalys { val driver = "com.mysql.jdbc.Driver" val url = "jdbc:mysql://ur
關於mysql資料庫匯入資料慢的解決方法
mysqldump匯入慢的解決方法 mysql匯出的SQL語句在匯入時有可能會非常非常慢,經歷過匯入僅45萬條記錄,竟用了近3個小時。在匯出時合理使用幾個引數,可以大大加快導 入的速度。 -e 使用包括幾個VALUES列表的多行INSERT語法; –max_al
批量向mysql資料庫匯入資料夾中的excl檔案(方法2)
前一篇是直接將excl檔案匯入到資料庫中,這次是現將excl檔案轉化成Dataframe格式的,然後直接匯入mysql資料庫(有現成函式哦) import numpy as np import pandas as pd import pymysql from sqlalchemy import
切記!pycharm向mysql資料庫新增資料過程
python 匯入包import requests 以爬取騰訊招聘網的招聘資訊為例:(完整程式碼) import requestsfrom lxml import etreeimport pymysqlheaders = {'user-agent': 'Mozilla/5.0 (Windows