Desafío de consultas SQL: encontrar los registros más recientes
Publicado por BathanF (8 intervenciones) el 04/10/2023 08:06:55
Estoy trabajando en una consulta SQL para una base de datos que contiene registros de transacciones de clientes. Cada transacción tiene un ID de transacción, ID de cliente, fecha de transacción y monto. Necesito encontrar la última transacción para cada cliente.
Aquí hay una versión simplificada de la tabla:
Quiero escribir una consulta SQL que recupere la última transacción de cada cliente. En este ejemplo, el resultado esperado incluiría transacciones con id_transacción 3 y 4 porque son las más recientes para los clientes 101 y 103, respectivamente.
¿Podría proporcionar una consulta SQL para lograr esto? Además, sería útil si pudiera explicar la lógica detrás de la consulta y las funciones o técnicas de SQL utilizadas. ¡Gracias por su asistencia!
Aquí hay una versión simplificada de la tabla:
1
2
3
4
5
6
7
8
9
10
11
12
13
CREATE TABLE transactions (
transaction_id INT PRIMARY KEY,
customer_id INT,
transaction_date DATE,
amount DECIMAL(10, 2)
);
INSERT INTO transactions VALUES
(1, 101, '2023-01-15', 50.00),
(2, 102, '2023-02-10', 30.00),
(3, 101, '2023-02-25', 75.00),
(4, 103, '2023-03-05', 40.00),
(5, 102, '2023-03-12', 55.00);
Quiero escribir una consulta SQL que recupere la última transacción de cada cliente. En este ejemplo, el resultado esperado incluiría transacciones con id_transacción 3 y 4 porque son las más recientes para los clientes 101 y 103, respectivamente.
¿Podría proporcionar una consulta SQL para lograr esto? Además, sería útil si pudiera explicar la lógica detrás de la consulta y las funciones o técnicas de SQL utilizadas. ¡Gracias por su asistencia!
Valora esta pregunta
0