LeetCode-1327. Lista de todos los pedidos de productos especificados período de tiempo (simple)

Tabla: Productos

+ --------- + ------------------ +
| columna Nombre | Tipo |
+ ------------- + --------- + -----
| product_id | int |
| PRODUCT_NAME | VARCHAR |
| PRODUCT_CATEGORY | VARCHAR |
+ ------------------ + --------- +
la tabla product_id es la clave principal.
Esta tabla contiene los datos de los productos de la compañía.
Tabla: Órdenes

+ --------- + --------------- +
| columna Nombre | Tipo |
+ --------------- + + ---------
| product_id | int |
| order_date | FECHA |
| Unidad | int |
+ --------------- + -------- - +
la tabla sin clave principal, puede contener filas duplicadas.
Productos forman product_id es una clave externa.
unidad es el número de pedidos de productos durante el order_date fecha.
 

Escribir una instrucción SQL, necesario para obtener el número en febrero de 2020 con cargo al solo nombre de no menos de 100 y el número de productos.

Secuencia vuelve hoja de resultados n.

 

Los resultados de la consulta en el siguiente formato:

Productos表:
+ ------------- + ----------------------- + -------- ---------- +
| product_id | product_name | PRODUCT_CATEGORY |
+ ------------- + ----------------------- + ----------- ------- +
| 1 | Soluciones Leetcode | libro |
| 2 | Joyas de Stringology | libro |
| 3 | HP | ordenador portátil |
| 4 | Lenovo | ordenador portátil |
| 5 | Leetcode Kit | Camiseta |
+ ------------- + ----------------------- + ----------- ------- +

Órdenes表:
+ -------------- + -------------- + ---------- +
| product_id | order_date | unidad |
-------------- -------------- + + + ---------- +
| 1 | 02/05/2020 | 60 |
| 1 | 02/10/2020 | 70 |
| 2 | 01/18/2020 | 30 |
| 2 | 02/11/2020 | 80 |
| 3 | 02/17/2020 | 2 |
| 3 | 02/24/2020 | 3 |
| 4 | 01/03/2020 | 20 |
| 4 | 03/04/2020 | 30 |
| 4 | 03/04/2020 | 60 |
| 5 | 02/25/2020 | 50 |
| 5 | 02/27/2020 | 50 |
| 5 | 01/03/2020 | 50 |
+ -------------- + -------------- + ---------- +

Resultado表:
+ -------------------- + --------- +
| product_name | unidad |
+ -------------------- + --------- +
| Soluciones Leetcode | 130 |
| Leetcode Kit | 100 |
+ -------------------- + --------- +

2020 febrero, la suma del número de solo producto la product_id = 1 es de (60 + 70) = 130.
De febrero de de 2020, la suma de los números de los productos individuales product_id = 2 a 80.
2020 febrero, la suma del número de solo producto la product_id = 3 es (2 + 3) = 5.
2020 febrero product_id = 4 y ningún producto individual.
2020 febrero, la suma del número de solo producto la product_id = 5 es (50 + 50) = 100.

Fuente: estancia botón (LeetCode)
enlace: https: //leetcode-cn.com/problems/list-the-products-ordered-in-a-period
con derechos de autor por deducción de todas las redes. reimpresión comercial póngase en contacto con la reimpresión autorizada oficial, no comercial por favor indique la fuente.

Moderación: escribir una instrucción SQL, necesario para obtener el número en febrero de 2020 con cargo al solo nombre de no menos de 100 y el número de productos.

Pensamientos: Identificación del acuerdo y la fecha de grupo, suma y 100 de comparación. Fechas necesitan para convertir al mes.

La resolución de problemas:

select p.product_name,sum(o.unit) as unit
from
    products p
left join
    orders o 
on
    p.product_id=o.product_id
where
    order_date between '2020-02-01' and '2020-02-29'
group by
    p.product_name
having
    sum(o.unit)>=100
order by
    sum(o.unit)

puntos de conocimiento:

Publicados 144 artículos originales · ganado elogios 2 · Vistas 5731

Supongo que te gusta

Origin blog.csdn.net/Hello_JavaScript/article/details/104789102
Recomendado
Clasificación