es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Uso de Fechas en Oracle SQL

Estoy tratando de obtener solamente el mes de agosto en mi base de datos y luego contar cuántas veces ha habido un rendimiento durante agosto, sin embargo no puedo descubrir cómo hacerlo.

Aquí está el código que he creado hasta ahora.

SELECT f.FILM_NAME, COUNT(p.PERFORMANCE_DATE), SUM(p.TAKINGS), p.PERFORMANCE_DATE
FROM A2_PERFORMANCE p, A2_FILM f 
WHERE p.PERFORMANCE_DATE LIKE TO_DATE('08-2021', 'MM-YY')
GROUP BY f.FILM_NAME, p.PERFORMANCE_DATE
ORDER BY f.FILM_NAME

Actualmente estoy tratando de lograr esto:

-- FILM_NAME                   Performances Total Takings     

<hr>

-- It Happened One Night       39               £63,571 
-- Modern Times                38               £58,332 
-- Parasite                    23               £37,195 
-- Knives Out                  22               £34,362 
-- Citizen Kane                25               £32,711 
-- The Wizard of Oz            18               £21,716 
-- Avengers: Endgame           18               £17,081
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para obtener solo el mes de agosto en tu base de datos, puedes utilizar la función EXTRACT() para extraer el mes de la columna PERFORMANCE_DATE y luego filtrar por el mes de agosto utilizando la cláusula WHERE.

    SELECT f.FILM_NAME, COUNT(p.PERFORMANCE_DATE), SUM(p.TAKINGS)
    FROM A2_PERFORMANCE p, A2_FILM f 
    WHERE EXTRACT(MONTH FROM p.PERFORMANCE_DATE) = 8
    AND EXTRACT(YEAR FROM p.PERFORMANCE_DATE) = 2021
    GROUP BY f.FILM_NAME
    ORDER BY f.FILM_NAME
    

    Esto debería darte el resultado deseado del número de actuaciones y ganancias totales para cada película que tuvo una actuación durante agosto de 2021.

Comments are closed.