Tipo de datos DATE de SQL Server

Resumen: en este tutorial, aprenderás cómo usar el tipo de datos DATE de SQL Server para almacenar datos de fecha en una tabla.
Introducción al tipo de datos DATE de SQL Server
Para almacenar los datos de fecha en la base de datos, utiliza el tipo de datos DATE de SQL Server. La sintaxis de DATE es la siguiente:
DATE
A diferencia del tipo de datos DATETIME2, el tipo de datos DATE solo tiene el componente de fecha. El rango de un valor DATE es desde el 1 de enero de 1 (0001-01-01) hasta el 31 de diciembre de 9999 (9999-12-31).
Se necesitan 3 bytes para almacenar un valor DATE. El formato de cadena literal predeterminado de un valor DATE es el siguiente:
YYYY-MM-DD
Formato DATE
- AAAA son cuatro dígitos que representan un año, que van desde 0001 hasta 9999.
- MM son dos dígitos que representan un mes de un año, que va del 01 al 12.
- DD son dos dígitos que representan un día del mes especificado, que va del 01 al 31, según el mes.
Ejemplos de FECHA de SQL Server
A) Consultar datos de una tabla basada en valores DATE
Veamos la tabla sales.orders de la base de datos de ejemplo:
El siguiente SELECT devuelve todos los pedidos cuya fecha de pedido es anterior al 5 de enero de 2016:
SELECT
order_id,
customer_id,
order_status,
order_date
FROM
sales.orders
WHERE order_date < '2016-01-05'
ORDER BY
order_date DESC;
Resultado:
order_id | customer_id | order_status | order_date |
---|---|---|---|
6 | 94 | 4 | 2016-01-04 |
7 | 324 | 4 | 2016-01-04 |
8 | 1204 | 4 | 2016-01-04 |
4 | 175 | 4 | 2016-01-03 |
5 | 1324 | 4 | 2016-01-03 |
3 | 523 | 4 | 2016-01-02 |
1 | 259 | 4 | 2016-01-01 |
2 | 1212 | 4 | 2016-01-01 |
B) Definir columnas DATE en una nueva tabla
La siguiente declaración crea una tabla llamada sales.list_prices que tiene dos columnas DATE
:
CREATE TABLE sales.list_prices (
product_id INT NOT NULL,
valid_from DATE NOT NULL,
valid_to DATE NOT NULL,
amount DEC (10, 2) NOT NULL,
PRIMARY KEY (
product_id,
valid_from,
valid_to
),
FOREIGN KEY (product_id)
REFERENCES production.products (product_id)
);
La siguiente instrucción INSERT muestra cómo insertar una fila con valores de fecha literal en la tabla:
INSERT INTO sales.list_prices (
product_id,
valid_from,
valid_to,
amount
)
VALUES
(
1,
'2019-01-01',
'2019-12-31',
400
);
En este tutorial, aprendiste a usar el tipo de datos DATE
de SQL Server para almacenar datos de fecha en una tabla.