Maison > Questions et réponses > le corps du texte
J'ai une base de données MySQL avec une colonne bigint appelée Years_valid_for et une colonne datetime(6) appelée Completion_date. Je dois soustraire l'année d'une colonne bigint.
Par exemple, Years_valid_for est 4 et Completion_date est 2023-06-07. Je dois soustraire 4 ans du 07/06/2023 pour obtenir le 07/06/2019.
Est-ce possible ? Si possible, comment ?
J'ai essayé la fonction DATE_SUB mais je n'ai pas pu obtenir le résultat attendu en raison d'une erreur de syntaxe.
P粉1704382852023-09-14 11:23:26
Syntaxe : - DATE_SUB (date, intervalle de valeur INTERVAL)
SELECT DATE_SUB(completion_date, INTERVAL years_valid_for YEAR) AS res_date FROM your_table_name
P粉7262346482023-09-14 00:26:16
Vous pouvez procéder comme suit :
SELECT *, completion_date - INTERVAL years_valid_for YEAR FROM mytable