MySQL當前字符串轉時間
MySQL是最常用的數(shù)據(jù)庫之一,也是開源免費的關系型數(shù)據(jù)庫。它除了支持標準SQL外,還支持存儲各種數(shù)據(jù)格式,其中字符類型的數(shù)據(jù)很常見。在MySQL中,我們可以使用字符串表示時間,例如:2020-04-23 10:23:05。在這篇文章中,我們將探討如何將MySQL當前字符串轉換成時間。
使用STR_TO_DATE函數(shù)轉換
如果需要將MySQL當前字符串轉換成時間,我們可以使用MySQL自帶的函數(shù)—STR_TO_DATE,它可以將字符串按照指定的格式轉換成時間類型。下面我們來看一個例子。
在下面的數(shù)據(jù)表中,我們使用VARCHAR類型存儲時間:
CREATE TABLE student (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
datetime VARCHAR(50)
);
INSERT INTO student (id, name, datetime) VALUES (1, 'Tom', '2022-08-08 08:08:08');
使用STR_TO_DATE函數(shù)將時間字符串轉換成時間類型:
SELECT STR_TO_DATE(datetime, '%Y-%m-%d %H:%i:%s') FROM student WHERE id = 1;
結果:
2022-08-08 08:08:08
通過這個例子,我們看到了如何使用STR_TO_DATE函數(shù)將字符串轉換成MySQL中的時間格式。
使用UNIX_TIMESTAMP函數(shù)轉換
除了使用STR_TO_DATE函數(shù)外,我們還可以使用UNIX_TIMESTAMP函數(shù)進行轉換。UNIX_TIMESTAMP函數(shù)將時間字符串轉換成UNIX時間戳,然后我們可以使用FROM_UNIXTIME函數(shù)將UNIX時間戳轉換成MySQL中的時間格式。下面我們來看一個實例。
使用UNIX_TIMESTAMP函數(shù)將時間字符串轉換成UNIX時間戳:
SELECT UNIX_TIMESTAMP(datetime) FROM student WHERE id = 1;
結果:
1659989288
使用FROM_UNIXTIME函數(shù)將UNIX時間戳轉換成MySQL中的時間格式:
SELECT FROM_UNIXTIME(1659989288) FROM student WHERE id = 1;
結果:
2022-08-08 08:08:08
總結
MySQL當前字符串轉換成時間類型,可以使用MySQL自帶的函數(shù)STR_TO_DATE和UNIX_TIMESTAMP。前者可以將字符串轉換成MySQL中的時間格式,而后者則是將時間字符串轉換成UNIX時間戳,然后再通過FROM_UNIXTIME函數(shù)將UNIX時間戳轉換成MySQL中的時間格式。這兩種方法都有其優(yōu)劣之處,需要根據(jù)實際情況進行選擇。
上一篇css溢出是點點點