O exemplo da função DATE_SUB é o seguinte:
Dados de consulta SQL de hoje e ontem , dados de consulta SQL do mês passado , dados de consulta SQL dos últimos três dias , dados de consulta SQL de uma semana , etc.
(exemplos específicos estão abaixo)
DATE_SUB() 函数
No SQL, DATE_SUB()
é uma função que subtrai um intervalo de tempo especificado da data atual. Sua sintaxe é a seguinte:
DATE_SUB(date, INTERVAL unit value)
onde date
é a data a ser ajustada, unit
é a unidade de intervalo de tempo a ser subtraída (ex: "ANO", "MÊS", "DIA", etc.), value
é a quantidade dessa unidade a ser subtraída.
Por exemplo, para subtrair um mês da data atual, você pode usar a seguinte declaração:
DATE_SUB(CURDATE(), INTERVAL 1 MONTH)
exemplo:
1. Instrução SQL, de acordo com create_time para consultar os dados do mês passado:
SELECT * FROM my_table
WHERE create_time >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH);
Na instrução, my_table
é o nome da tabela a ser consultada create_time
e é o nome da coluna da tabela que armazena a data de criação. A instrução usa DATE_SUB()
funções e CURDATE()
funções para calcular a data de um mês atrás e, em seguida, compara-a com o valor na coluna create_time para obter dados correspondentes.
2. Instrução SQL, consulta hoje e ontem de acordo com create_time:
SELECT * FROM my_table
WHERE DATE(create_time) IN (CURDATE(), CURDATE() - INTERVAL 1 DAY);
Use CURDATE()
a função para obter a data atual e use CURDATE() - INTERVAL 1 DAY
para obter a data de ontem.
3. Instrução SQL, julgue create_time de acordo com a hora de início e a hora de término para consultar os dados:
//1
SELECT * FROM my_table
WHERE create_time >= start_time AND create_time <= end_time;
//前端组件只到年月日的话用下方
//2 create_time 精确地2023-06-13 20:32:23,
// DATE('2023-06-13 20:32:23') 得到的是=> '2023-06-13'
SELECT * FROM my_table
WHERE DATE(create_time) >= DATE('2023-06-13') AND DATE(create_time) <= DATE('2023-06-14');