mysql date format timestamp functions with examples
Questo tutorial completo fornisce la sintassi ed esempi di funzioni MySQL Date Format e Timestamp come data corrente, aggiungi data, aggiungi ora ecc .:
In questo tutorial, impareremo in modo approfondito i tipi di dati di data e ora di MySQL e le varie funzioni fornite da MySQL per manipolare i valori di data e ora.
MySQL fornisce un grande set di funzioni / utilità per eseguire diverse operazioni come l'aggiunta e la sottrazione di date, scoprire la differenza tra 2 date ed estrarre parti specifiche di un dato valore di data e ora.
Cosa imparerai:
- Formato data MySQL e funzioni ora
- Conclusione
Formato data MySQL e funzioni ora
Queste funzioni sono molto importanti ogni volta che qualsiasi operazione sui valori della colonna data e ora è richiesta nelle tabelle MySQL.
Prerequisiti
Per eseguire gli esempi utilizzati nel tutorial, è necessaria una configurazione locale dell'installazione di MySQL.
= >> Per l'installazione di MySQL fare riferimento al nostro tutorial Qui.
Tipi di dati DATA e ORA
I tipi di dati includono YEAR, DATE, TIME, DATETIME e TIMESTAMP.
MySQL memorizza i valori di data e ora utilizzando 5 diversi tipi di dati, ad esempio: YEAR, DATE, TIME, DATETIME e TIMESTAMP. Proviamo a capirli brevemente nella tabella seguente, prima di approfondire i FORMATI DI DATA e LE FUNZIONI DI ORA DATA fornite da MySQL.
genere | Sintassi | Gamma | Memoria | Formato |
---|---|---|---|---|
% H | Ora - 00-23 | |||
ANNO | Utilizzato per memorizzare solo la parte dell'anno colName ANNO | 1901 - 2155 | 1 | 'AAAA' |
DATA | Utilizzato per memorizzare solo la parte DATE. colName DATA | Da '1000-01-01' a '9999-12-31' | 3 | 'AAAA-MM-GG' |
TEMPO | Utilizzato per memorizzare solo la parte TIME. colName TEMPO colName TIME (n) n -> accuratezza o componente frazionaria | Da ‘00: 00: 00 ’a ‘23: 59: 59’ | 3 + fractionalStorage | 'Hh: mm: ss. (Frazione)' |
APPUNTAMENTO | Utilizzato per memorizzare sia DATA che ORA colName APPUNTAMENTO colName DATETIME (n) n -> accuratezza o componente frazionaria | '1000-01-01 00: 00: 00.000000' a '9999-12-31 23: 59: 59.999999' | 5 + fractionalStorage | 'AAAA-MM-GG hh: mm: ss. (Frazione)' |
TIMESTAMP | Utilizzato per memorizzare sia DATA che ORA colName TIMESTAMP colName TIMESTAMP (n) n -> accuratezza o componente frazionaria | '1970-01-01 00:00:01' UTC a '2038-01-19 03:14:07' UTC. | 4 + fractionalStorage | 'AAAA-MM-GG hh: mm: ss. (Frazione)' |
Ora capiremo i requisiti di memoria per l'archiviazione frazionata. Per i tipi di dati TIME, DATETIME e TIMESTAMP a seconda del componente frazionario specificato, la memoria consumata sarebbe diversa.
No di cifre frazionarie | Memoria (in byte) |
---|---|
0 | 0 |
1-2 | 1 |
3-4 | Due |
5-6 | 3 |
Utilizzando la tabella sopra, per esempio, se abbiamo un tipo di colonna come - TIME (5).
Quindi la memoria totale utilizzata sarebbe => memoria utilizzata dal tipo di dati TIME + memoria utilizzata da 5 componenti frazionari => 3 + 3 => 6 byte
Illustriamo tutti questi tipi di dati come parte di una singola tabella e vediamo i valori assegnati a ciascuno dei tipi.
CREATE TABLE datetime_illustration(year_col YEAR, date_col DATE, time_col TIME, time_col_fractional TIME(2), datetime_col DATETIME, datetime_col_fractional DATETIME(6), timestamp_col TIMESTAMP, timestamp_col_fractional TIMESTAMP(6))
Inserisci una singola riga nella tabella utilizzando la funzione 'now ()', che è il timestamp corrente. Si noti come l'utilizzo di questa funzione comporterebbe il taglio / inserimento solo della parte richiesta della data e dell'ora correnti, a seconda del tipo di dati della colonna.
insert into datetime_illustration values (now(), now(), now(), now(), now(), now(), now(), now()); select * from datetime_illustration
Vediamo ora il contenuto della tabella per analizzare i dati in colonne diverse.
select * from datetime_illustration
Quindi, riassumiamo i dati sopra come,
- A tutte le colonne sono stati assegnati valori per i tipi di dati, per esempio, per la prima colonna - ANNO - sebbene l'abbiamo inserita utilizzando la funzione 'now ()' che è il timestamp corrente, il valore che è stato inserito è solo la parte dell'anno della data e dell'ora corrente, ovvero 2020.
- La funzione now () restituisce il datetime corrente nel formato - gg: mm: aaaa hh: mm: ss
- Notare la parte frazionaria nei nomi delle colonne con '_fractional'. A seconda del numero di cifre frazionarie specificato, i valori frazionari vengono acquisiti e visualizzati.
Inizializzazione e aggiornamento automatici dei campi DATETIME e TIMESTAMP
Negli scenari di vita reale, la maggior parte delle volte, l'inizializzazione e gli aggiornamenti di DATETIME sono configurati per essere automatici.
Ciò significa che generalmente le tabelle hanno 2 colonne come: creato_time e updated_time .
La colonna created_time è configurata per assumere il valore dell'ora di sistema corrente ogni volta che la riga viene inserita, e in modo simile updated_time è configurata per prendere l'ora di sistema corrente ogni volta che ci sono aggiornamenti effettuati su una particolare riga della tabella.
Si prega di notare che, durante il tempo di inserimento della riga, sia created_time che updated_time avrebbero lo stesso valore. Tutti i successivi aggiornamenti alla riga comporterebbero l'aggiornamento del campo updated_time con l'ora di sistema corrente.
Proviamo a creare una di queste tabelle con inizializzazione automatica e aggiornamento.
Creeremo una tabella denominata prezzo delle azioni che ha i campi simbolo di borsa, prezzo e data / ora - created_on e updated_on.
create table stock_price(symbol varchar(100), price decimal(10,2), created_on datetime default current_timestamp, updated_on datetime default current_timestamp on update current_timestamp)
Inserisci alcuni dati nella tabella:
insert into stock_price(symbol,price) values('AMZN','3000.10');
Vediamo il risultato (nota che abbiamo appena inserito i valori per simbolo e prezzo: le colonne datetime, created_on e updated_on dovrebbero essere inizializzate automaticamente)
select * from stock_price
implementazione dell'algoritmo di dijkstra in java
Prova ad aggiornare il prezzo delle azioni per le azioni 'AMZN' come mostrato di seguito:
update stock_price set price='3005.15' where symbol='AMZN'
E ora, recupera di nuovo i dati per la tabella. Dovremmo vedere il valore di updated_time essere cambiato a qualunque ora sia avvenuto l'aggiornamento a stock_price.
select * from stock_price
È ora possibile notare dall'esempio precedente che il valore della colonna updated_on è stato aggiornato al timestamp di aggiornamento.
Funzioni di data e ora di MySQL
MySQL fornisce numerose funzioni per colonne con tipi di dati relativi a data e ora.
Queste funzioni sono generalmente utilizzate per
- Convertire una data memorizzata in un formato richiesto durante l'interrogazione dei dati.
- Manipolare i campi data e ora esistenti, come aggiungere un intervallo al valore corrente della colonna, sottrarre ore dai valori impostati correnti, ecc.
- Estrazione di informazioni specifiche dai valori memorizzati, per esempio, estraendo solo la parte 'data' dal valore memorizzato e facendo ulteriori filtri / operazioni come RAGGRUPPARE PER con la data, ecc.
In questa sezione, vedremo esempi contro le funzioni di data e ora più comunemente utilizzate.
>> Fare riferimento Qui per un elenco completo di tali funzioni.
# 1) Ottenere la data e l'ora correnti
MySQL fornisce molte funzioni utili / valori costanti per recuperare i valori correnti di data e ora e vengono generalmente utilizzati durante la memorizzazione dei valori nelle colonne datetime o il recupero rispetto a qualsiasi intervallo particolare dai valori di data e ora correnti.
a) curdate ()
Questa funzione ottiene la data corrente. Altri sinonimi della funzione curdate () sono - CURRENT_DATE, CURRENT_DATE (), CURRENT_DATE ( fractionalDigits )
Di seguito è riportato un esempio di questa funzione:
select curdate(), CURRENT_DATE(), CURRENT_DATE
b) curtime ()
Questa funzione ottiene l'ora corrente. Per ottenere una parte frazionaria (fino a 6 cifre) specificare la frazione tra parentesi come curtime (3) Questo recupererebbe il valore corrente dell'ora di sistema fino a 3 cifre decimali.
Altri sinonimi della funzione curtime () sono- CURRENT_TIME, CURRENT_TIME (), CURRENT_TIME ( fractionalDigits )
select curtime(), CURRENT_TIME(), CURRENT_TIME, curtime(6), CURRENT_TIME(6)
c) ora ()
Questa funzione ottiene il timestamp corrente. Specificare la parte frazionaria tra parentesi, per esempio, now (4) recupera il timestamp corrente fino a 4 cifre decimali.
Altri sinonimi della funzione now () includono CURRENT_TIMESTAMP, CURRENT_TIMESTAMP (), CURRENT_TIMESTAMP ( fractionalDigits )
select now(), CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP, now(6), CURRENT_TIMESTAMP(6)
# 2) Aggiungere e sottrarre date
MySQL fornisce funzioni per aggiungere e sottrarre valori di data e ora a un valore esistente memorizzato nella colonna o da utilizzare durante l'interrogazione dei dati. Capiremo le funzioni con l'aiuto di esempi.
Useremo la tabella seguente per eseguire l'addizione data-ora alla sottrazione.
create table datetime_calc(datecol DATE, timecol TIME, datetimecol DATETIME(6));
Inserire alcune voci nella tabella sopra utilizzando le istruzioni INSERT come mostrato di seguito:
insert into datetime_calc values(now(), now(), now(6)); insert into datetime_calc values(now(), now(), now(6));
Esaminiamo la tabella sopra e vediamo i dati memorizzati:
Oltre ad aggiornare le colonne in una tabella, possiamo eseguire direttamente una manipolazione datetime utilizzando l'istruzione SELECT applicandola a qualsiasi data / ora specifica o valore datetime.
a) AGGIUNGI ()
Come suggerisce il nome, questa funzione viene utilizzata per aggiungere una data a un valore di data esistente che potrebbe essere di tipo: DATE, DATETIME o TIMESTAMP
Sintassi:
ADDDATE(inputTimeValue/fieldName, noOfDays)
ADDDATE può anche essere chiamato con il valore Interval, che potrebbe essere DAYS, WEEK, HOUR, MINUTE, SECOND, ecc.
La sintassi, in tal caso, cambierebbe in,
ADDDATE(inputTimeValue/fieldName, Interval intervalUnit)
Vediamo un paio di esempi per capirlo meglio.
SELECT ADDDATE('2020-08-15', 31); // output '2020-09-15'
Quando un valore intero viene fornito come secondo argomento, viene considerato come il numero di giorni da aggiungere alla data specificata.
Alcuni altri esempi con Intervallo come - MONTH, HOUR e WEEK sono:
SELECT ADDDATE('2020-01-02', INTERVAL 1 MONTH); //output 2020-02-02
SELECT ADDDATE('2020-01-02 12:11:11', INTERVAL 5 HOUR); //output 2020-01-02 17:11:11
SELECT ADDDATE('2020-01-02 12:11:11', INTERVAL 1 WEEK); //output 2020-01-09 12:11:11
Altri esempi di intervalli potrebbero essere: MINUTE, SECOND, QUARTER, ecc.
Per aggiornare una colonna della tabella esistente, per esempio, per la tabella abbiamo creato 'datetime_calc' se vogliamo aggiornare il valore 'datecol' e aggiungere 10 giorni a tutte le date nella colonna, potremmo usare la query come di seguito:
update datetime_calc set datecol=ADDDATE(datecol, 30);
Ora, usa SELEZIONA * per mostrare tutti i dati nella tabella datetime_calc.
SELECT * FROM datetime_calc
Possiamo vedere nell'output sopra che i valori della colonna datecol sono stati aggiornati al 24-09-2020 dal 25-08-2020 dopo aver aggiunto 30 giorni ai valori esistenti.
b) ADDTIME ()
Simile a ADD_DATE, la funzione ADD_TIME può essere utilizzata per aggiungere una componente temporale a una colonna / campo DATETIME, TIME o TIMESTAMP esistente o a un input specificato.
Sintassi:
ADDTIME(inputTimeValue/fieldName, ‘hh:mm:ss’)
Esempio:
SELECT ADDTIME('2020-01-02 12:11:11', '01:10:00'); // output 2020-01-02 13:21:11
Diamo un'occhiata a un esempio in cui stiamo aggiornando una colonna data / ora in una tabella aggiungendo 5 ore a tutti i valori all'interno di quella colonna. Ecco una query di esempio:
update datetime_calc set datetimecol=ADDTIME(datetimecol, '05:00:00')
Output tabella prima:
// output '2020-08-25 05:53:37.851379' '2020-08-25 05:53:39.711515'
Output tabella dopo:
// output '2020-08-25 10:53:37.851379' '2020-08-25 10:53:39.711515'
c) SUBDATE ()
SUBDATE è esattamente simile a ADDDATE, l'unica differenza è che SUBDATE sottrae l'intervallo / n. di giorni dal valore della colonna / campo.
Sintassi:
SUBDATE(inputTimeValue/fieldName, noOfDays)
Diamo un'occhiata a un paio di esempi per illustrare la funzione SUBDATE ().
SELECT SUBDATE('2020-08-15', 31); // output 2020-07-15
L'esempio seguente mostra la sottrazione di un intervallo menzionato in ore / giorni settimana, ecc.
SELECT SUBDATE('2020-01-02 12:11:11', INTERVAL 1 WEEK); // output 2019-12-26 12:11:11 SELECT SUBDATE('2020-01-02 12:11:11', INTERVAL 12 HOUR); // output 2020-01-02 00:11:11
d) SUBTIME ()
SUBTIME sottrae il valore temporale specificato in 'hh: mm: ss' da un dato valore del campo data / ora o ora.
Sintassi:
SUBTIME(inputTimeValue/fieldName, ‘hh:mm:ss’)
Esempi di funzione SUBTIME ():
SELECT SUBTIME('2020-01-02 12:11:11', '02:20:05'); // output 2020-01-02 09:51:06
# 3) Conversione delle date
MySQL fornisce una varietà di funzioni integrate dalla conversione delle date da un formato all'altro. Vediamo le funzioni più utilizzate per la conversione delle date.
a) CONVERT_TZ ()
Questa funzione viene utilizzata per convertire la data da un fuso orario a un altro. Questi sono utili in situazioni in cui si supponga che i dati siano stati memorizzati utilizzando il fuso orario UTC e durante la visualizzazione si desidera convertirli nel fuso orario di propria scelta.
Per esempio, convertire UTC in MET (Middle European Time).
SELECT CONVERT_TZ('2004-01-01 12:00:00', 'UTC', 'MET');
Suggerimenti / note
# 1) Per ottenere l'elenco di tutti i fusi orari nel database di sistema MySQL, è possibile eseguire la query seguente e utilizzare uno qualsiasi dei nomi dei fusi orari per la conversione da un fuso orario a un altro.
select * from mysql.time_zone_name
#Due) Le informazioni sul fuso orario vengono inserite durante l'installazione dell'istanza del server MySQL. Se il risultato della query precedente è NULL, potrebbe essere necessario prima popolare i valori del fuso orario nelle tabelle di sistema MySQL.
>> Segui questo collegamento per ulteriore aiuto su questo.
b) FROM_UNIXTIME ()
Questa funzione viene utilizzata per convertire un dato UNIX TIMESTAMP nel formato datetime di MySQL.
SELECT FROM_UNIXTIME(1547430881); //output 2019-01-14 07:24:41
c) UNIX_TIMESTAMP
Questa funzione viene utilizzata per convertire un dato datetime di MySQL in un timestamp UNIX.
SELECT UNIX_TIMESTAMP('2020-03-15 07:10:56.123') //output 1584236456.123
Il timestamp UNIX è la rappresentazione di una determinata data sotto forma di secondi trascorsi dal 1 gennaio 1970, UTC.
>> Fare riferimento Qui per maggiori dettagli sul timestamp di UNIX.
# 4) Recupero di parti specifiche delle colonne DateTime
A volte, si desidera recuperare una parte specifica del valore della data per un valore del campo datetime nella tabella. Per esempio , supponi di voler contare il no. di ordini e raggruppali per giorno, settimana, mese, ecc.
E, in generale, questi valori non vengono memorizzati come colonne separate nella tabella - per esempio, avresti solo una colonna come - created_on che sarebbe un campo datetime e non avere colonne separate come - data, mese, anno, ecc.
MySQL fornisce molti metodi utili in cui è possibile estrarre la parte desiderata dal campo DateTime.
Supponiamo di avere un valore datetime come - '2020-03-15 07: 10: 56.123'
Diamo un'occhiata ad alcune delle funzioni ampiamente utilizzate con esempi che utilizzano il valore datetime sopra.
a) Estratto GIORNO
MySQL fornisce le seguenti funzioni per estrarre le informazioni GIORNO:
DATA() - Estrarre la parte DATE () del campo DateTime.
software di controllo della versione gratuito per Windows
SELECT DATE('2020-03-15 07:10:56.123'); //output 2020-03-15
DAYOFMONTH () - Estrai la parte GIORNO di datetime. È essenzialmente il giorno del mese. L'abbreviazione per l'utilizzo di questa funzione è GIORNO ()
SELECT DAYOFMONTH('2020-03-15 07:10:56.123'); //output 15
GIORNO DELLA SETTIMANA () - Estrae l'indice corrispondente al giorno della settimana - valori compresi tra 1 e 7.
SELECT DAYOFWEEK('2020-03-15 07:10:56.123'); //output 1
DAYOFYEAR () - Estrae la giornata in termini di n. di giorni trascorsi in un anno. I valori sono compresi tra 1 e 365 (o 366 se si tratta di un anno bisestile).
SELECT DAYOFYEAR('2020-03-15 07:10:56.123'); //output 75
DAYNAME () - Estrae il nome del giorno con valori compresi tra lunedì e domenica.
SELECT DAYNAME('2020-03-15 07:10:56.123'); //output Sunday
b) Estrai TIME
MySQL fornisce le seguenti funzioni per estrarre i valori TIME:
TEMPO() - Estrae la porzione di tempo nel formato hh: mm: ss (con componente frazionaria dei secondi se disponibile).
SELECT TIME('2020-03-15 07:10:56.123'); //output '07:10:56.123'
HOUR () - Estrae la parte oraria del campo / valore - valori compresi tra 1 e 24.
SELECT HOUR('2020-03-15 07:10:56.123'); //output 7
MINUTE () - Estrae la parte dei minuti del dato datetime - valori compresi tra 1 e 60.
SELECT MINUTE('2020-03-15 07:10:56.123'); //output 10
SECONDO () - Estrae la parte dei secondi del dato datetime - valori compresi tra 1 e 60.
SELECT SECOND('2020-03-15 07:10:56.123'); //output 56
MICROSECONDO () - Estrae la parte in microsecondi del DateTime specificato.
SELECT MICROSECOND('2020-03-15 07:10:56.123'); //output 123000
c) Estrai MESE
MESE() - Estrae l'indice del mese. Valori compresi tra 1 e 12.
SELECT MONTH('2020-03-15 07:10:56.123'); //output 3
MONTHNAME () - Estrae il nome del mese. Valori compresi tra gennaio e dicembre.
SELECT MONTHNAME('2020-03-15 07:10:56.123'); //output March
d) Estrai SETTIMANA, ANNO e TRIMESTRE
SETTIMANA() - Estrae la SETTIMANA dell'anno per il valore DateTime specificato.
SELECT WEEK('2020-03-15 07:10:56.123'); //output 11
ANNO() - Estrae la parte ANNO della data.
SELECT YEAR('2020-03-15 07:10:56.123'); //output 2020
TRIMESTRE () - Estrae il trimestre rispetto all'anno. Valori compresi tra 1 e 4.
SELECT QUARTER('2020-03-15 07:10:56.123'); //output 1
Tutti questi metodi sopra sono usati principalmente per l'analisi dei dati e per fare previsioni - per esempio, quali giorni del mese erano i no. degli ordini più alti, ecc.
# 5) Trovare la differenza tra 2 date
Per trovare la differenza tra 2 valori di campo data / ora dati, MySQL fornisce le funzioni DATEDIFF () e TIMEDIFF ().
a) DATEDIFF ()
Restituisce la differenza tra 2 valori DateTime (o date) in numero di giorni.
Sintassi:
DATEDIFF(DateTime1, DateTIme2)
Vediamo alcuni esempi per la funzione DATEDIFF ():
DATEDIFF () utilizza gli input DateTime.
SELECT DATEDIFF('2020-01-05 12:11:11.11', '2020-01-03 14:11:11') //output 2
DATEDIFF () utilizzando gli input di data.
SELECT DATEDIFF('2020-04-02', '2020-01-04') //output 89
DATEDIFF () utilizzando gli input di data con output negativo.
SELECT DATEDIFF('2020-04-02', '2020-04-05') //output -3
b) TIMEDIFF ()
Questa funzione restituisce la differenza tra 2 valori datetime (o time) espressi in 'hh: mm: ss' con una parte frazionaria opzionale a seconda dell'input con cui è stata chiamata la funzione TIMEDIFF ().
Sintassi:
TIMEDIFF(DateTime1, DateTIme2)
Secondo la sintassi precedente, il risultato della funzione TIMEDIFF () sarebbe l'ora specificata come 'hh: mm: ss' per espressione => DateTime1 - DateTIme2
Si prega di notare che,
- Sia Expression 1 che Expression2 sono dello stesso tipo, ovvero un datetime, un altro just time, restituirebbero un valore NULL.
- Expression1 ed Expression2 non possono essere solo date. Esempio: DATEDIFF (2020-01-01, 2020-02-01) restituirà NULL.
Vediamo alcuni esempi per la funzione TIMEDIFF ():
TIMEDIFF () utilizzando gli input DateTime.
SELECT TIMEDIFF('2020-01-4 12:11:11.11', '2020-01-03 12:11:11') //output 24:00:00.11
TIMEDIFF () utilizzando gli input Time.
SELECT TIMEDIFF('12:11:11.11', '02:12:11') //output 09:59:00.11
TIMEDIFF () restituisce un output negativo.
SELECT TIMEDIFF('2020-01-01 12:11:11.11', '2020-01-03 12:11:11') //output -47:59:59.89
Si prega di notare che sia DATEDIFF () che TIMEDIFF () possono restituire valori NEGATIVI ogni volta che il primo argomento è minore del secondo, ovvero il primo argomento è un valore dateTime più vecchio rispetto al secondo.
# 6) Formattazione delle date
La funzione DATE_FORMAT () converte la data nel formato specificato.
Per esempio: Conversione della data richiesta nel formato mm / aaaa.
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%m/%Y'); //output 03/2020
Vediamo alcune convenzioni comuni per l'utilizzo degli identificatori di formato:
Formato | Descrizione |
---|---|
% Y | Valore dell'anno - 4 cifre |
% Y | Valore dell'anno - 2 cifre |
% M | Nome del mese come: gennaio, febbraio |
% m | Nome del mese: numerico |
% d | Giorno del mese |
% h | Ora - 00 - 12 |
%io | Minuti |
%S | Secondi |
A seconda del requisito, è possibile utilizzare questi specificatori di formato e MySQL DateTime può essere convertito nel formato richiesto.
Esempio: La conversione nel formato gg / mm / aaaa può essere specificata come:
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%d/%m/%Y'); //output 15/03/2020
>> Fare riferimento Qui per un elenco completo degli specificatori di formato supportati da MySQL.
Domande frequenti
D # 1) Come possiamo cambiare la parte dell'anno della data memorizzata in MySQL?
Risposta: Per aggiornare il valore dell'anno a un numero particolare per una determinata data, possiamo utilizzare il DATE_ADD e aggiungere la differenza tra l'anno corrente di data e quello che si desidera modificare.
Per esempio: Supponiamo di avere la data '2020-03-15 07: 10: 56.123' e di voler solo cambiare la parte dell'anno della data in 2018. Per fare ciò,
- Possiamo prima trovare la differenza tra l'anno da aggiornare e l'anno effettivo della data. Ciò potrebbe essere ottenuto utilizzando la funzione ANNO.
SELECT (2018 - year('2020-03-15 07:10:56.123')) //output -2
- Ora, possiamo aggiungere questo -2 come intervallo di anni utilizzando la funzione DATE_ADD.
SELECT DATE_ADD('2020-03-15 07:10:56.123', INTERVAL -2 year) //output 2018-03-15 07:10:56.123000
Puoi vedere sopra che abbiamo appena cambiato la parte dell'anno della data.
La stessa serie di passaggi può essere utilizzata quando è necessario modificare una parte specifica della data. Esempio: Mese, giorno, ecc.
Q # 2) Come cambiare datetime nel formato richiesto in MySQL?
miglior software per pulire il pc 2015
Risposta: MySQL fornisce la funzione DATE_FORMAT () per convertire datetime nella stringa formattata richiesta per la visualizzazione nei risultati della query.
>> Fare riferimento Qui per un elenco completo degli specificatori di formato.
Esempio: Per convertire datetime in formato - dd: mm: yyyy, puoi utilizzare la seguente query:
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%d:%m:%Y');
D # 3) Qual è il formato della data in MySQL?
Risposta: Il formato della data standard in MySQL è 'gg-mm-aaaa hh: mm: ss. { fractionalPart }
Valore datetime di esempio archiviato in MySQL - '2020-03-15 07: 10: 56.123'
D # 4) Come creare una tabella con il tipo di dati DATE in MySQL.
Risposta: MySQL fornisce diversi tipi di dati per memorizzare i valori di data e ora secondo le necessità. Solo per memorizzare le date: è possibile utilizzare il tipo di dati DATE. Memorizza i dati nel formato aaaa-mm-gg.
Vediamo un esempio di come specificare la colonna come tipo di DATA:
CREATE TABLE date_illustration(date_col DATE);
Conclusione
In questo tutorial, abbiamo imparato a conoscere i diversi tipi di dati forniti da MySQL per memorizzare i valori di data e ora e come è possibile utilizzare varie funzioni di facile utilizzo fornite da MySQL per eseguire calcoli sui valori di data e ora.
Abbiamo anche imparato a conoscere diverse funzioni come l'estrazione di parti specifiche del valore DateTime specificato, la conversione di una data data in un'altra forma, l'aggiunta di valori data / ora a valori esistenti, ecc.
DateTime è uno dei tipi di dati più importanti in MySQL e ha molta importanza per recuperare i dettagli quando si è verificato un evento.
Questi valori sono ampiamente utilizzati da analisti di dati / machine learning / modelli di prezzo, ecc. Dove vengono eseguite molte operazioni di suddivisione e suddivisione delle date per preparare modelli di apprendimento automatico e prendere decisioni aziendali critiche.
Lettura consigliata
- Esercitazione su C # DateTime: utilizzo di data e ora in C # con esempio
- Formato PL SQL Datetime: funzioni di data e ora in PL / SQL
- Tutorial Python DateTime con esempi
- Funzioni di data e ora in C ++ con esempi
- Tutorial MySQL Create View con esempi di codice
- MySQL Insert Into Table - Inserisci sintassi ed esempi di istruzioni
- Tutorial sulla creazione di tabelle in MySQL con esempi
- Istruzione MySQL Delete - Elimina la sintassi dei comandi ed esempi