Consulta SQL para obtener ayer y mañana

Las consultas ayudan a los usuarios a interactuar con una base de datos para crear, insertar, eliminar y actualizar datos en una base de datos con diferentes consultas.

En este artículo, veamos cómo obtener ayer y mañana con respecto a las fechas dadas en la base de datos.

Ejemplo –

Fecha dada: 2021-03-23
​​Ayer: 2021-03-22 Lunes
Mañana: 2021-03-24 Miércoles

Creación de un calendario de base de datos:

CREATE DATABASE calendar;

Uso del calendario de la base de datos

USE calendar;

Creación de un horario de mesa:

CREATE TABLE schedule
(dates date);

Viendo la descripción de la tabla:

DESCRIBE schedule;

Insertar filas en el horario:

INSERT INTO schedule VALUES('2021-03-23');
INSERT INTO schedule VALUES('2020-08-04');
INSERT INTO schedule VALUES('2021-06-08');
INSERT INTO schedule VALUES('2030-04-04');
INSERT INTO schedule VALUES('2025-09-13');
  

Visualización de los datos en la tabla:

SELECT* FROMschedule;

Consulta para obtener el ayer y el mañana de la fecha actual:

Para obtener el ayer y el mañana de la fecha actual, podemos usar la función CURRDATE() en MySQL y restarle 1 para obtener ayer y agregarle 1 para obtener mañana.

SELECT CURDATE(),
    DATE_SUB(CURDATE(),INTERVAL 1 DAY) AS yesterday,
    DATE_ADD(CURDATE(),INTERVAL 1 DAY) AS tomorrow;

Aquí podemos cambiar el encabezado de columna predeterminado a algún otro nombre usando AS.

Ejemplo 1: 

Consulta para obtener ayer y mañana de las fechas en la tabla:

Sintaxis:
SELECT CURDATE(),
DATE_SUB(CURDATE(),INTERVAL 1 DAY) AS some_name
DATE_ADD(CURDATE(),INTERVAL 1 DAY) AS some_name;

 SELECT dates,
     DATE_SUB(dates,INTERVAL 1 DAY) AS yesterday,
     DATE_ADD(dates,INTERVAL 1 DAY) AS tomorrow
     FROM schedule;

Ejemplo2: 

Consulta para obtener las fechas de ayer y mañana en la tabla con los días de la semana:

Sintaxis:

SELECT column_name,
DATE_SUB(column_name,INTERVAL 1 DAY) AS some_name,
DATE_ADD(column_name,INTERVAL 1 DAY) AS some_name,
DAYNAME(current_date),
DAYNAME(anterior_day),
DAYNAME(next_day);
 

  SELECT dates,
     DATE_SUB(dates,INTERVAL 1 DAY) AS yesterday,
     DATE_ADD(dates,INTERVAL 1 DAY) AS tomorrow,
     DAYNAME(dates) AS weekdayofdate,
     DAYNAME(DATE_SUB(dates,INTERVAL 1 DAY)) AS weekdayofYd,
     DAYNAME( DATE_ADD(dates,INTERVAL 1 DAY)) AS weekdayofTm
     FROM schedule;

                    

          

Publicación traducida automáticamente

Artículo escrito por lokeshpotta20 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *