novato completo en SQL aquí. Tengo una tarea en la que se suponía que debía crear un montón de tablas y luego realizar cierto filtrado entre ellas. Como se ve en la imagen, estos son en realidad 2 títulos distintos (de una tabla más grande que tiene más de estos) pero cada uno de ellos viene como un libro, una copia de audio y video, por lo que hay 3 filas para cada título distinto.
¿Hay alguna forma de que pueda escanear las múltiples filas en función del título y luego devolver solo una fila para cada título indicando si está disponible como video y audio? Por lo tanto, siempre que en 3 filas, la respuesta sea sí en "available_in_audio" o "available_in_video", ese 'sí' anulará el 'no' para cualquier columna escaneada antes o después.
Por ejemplo, para las 3 filas de Harry Potter y la cámara secreta, solo quiero una sola fila donde "Disponible_en_Audio" es Sí y "Disponible_en_Video" es Sí.
¡Muchas gracias y perdón por la larga pregunta!
Prueba esto
SELECT Title,
CASE WHEN (MAX(CASE WHEN Available_in_Audio = 'Yes' THEN 1 ELSE 0 END)) = 1 THEN 'Yes' ELSE 'No' END) AS Available_in_Audio,
CASE WHEN (MAX(CASE WHEN Available_in_Video = 'Yes' THEN 1 ELSE 0 END)) = 1 THEN 'Yes' ELSE 'No' END) AS Available_in_Video,
FROM <YourTable>
GROUP BY TITLE
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras