¿empezando aquí? Esta lección es parte de un tutorial completo sobre el uso de SQL para el análisis de datos. Mira el principio.

en esta lección cubriremos:

  • EL COMANDO DE UNIÓN izquierdo
  • Problemas de práctica

el comando de unión izquierdo

comencemos ejecutando un INNER JOIN en el conjunto de datos de Crunchbase y echando un vistazo resultados. Solo veremos company-permalink en cada tabla, así como un par de otros campos, para tener una idea de lo que realmente se está uniendo.,

SELECT companies.permalink AS companies_permalink, companies.name AS companies_name, acquisitions.company_permalink AS acquisitions_permalink, acquisitions.acquired_at AS acquired_date FROM tutorial.crunchbase_companies companies JOIN tutorial.crunchbase_acquisitions acquisitions ON companies.permalink = acquisitions.company_permalink

puede notar que «280 North» aparece dos veces en esta lista. Esto se debe a que tiene dos entradas en la tabla tutorial.crunchbase_acquisitions, las cuales se unen a la tabla tutorial.crunchbase_companies.,

ahora intente ejecutar esa consulta como un LEFT JOIN:

SELECT companies.permalink AS companies_permalink, companies.name AS companies_name, acquisitions.company_permalink AS acquisitions_permalink, acquisitions.acquired_at AS acquired_date FROM tutorial.crunchbase_companies companies LEFT JOIN tutorial.crunchbase_acquisitions acquisitions ON companies.permalink = acquisitions.company_permalink

puede ver que las dos primeras compañías del conjunto de resultados anterior, #waywire y 1000memories, son empujadas hacia abajo en la página por un número de resultados que contienen valores nulos en los campos acquisitions_permalink y acquired_date.,

esto se debe a que el comando LEFT JOIN le dice a la base de datos que devuelva todas las filas de la tabla en la cláusula FROM, independientemente de si tienen o no coincidencias en la tabla en el LEFT JOIN cláusula.,

mejore sus habilidades SQL

puede explorar las diferencias entre un LEFT JOIN y un JOIN resolviendo estos problemas de práctica:

problema de práctica

una unión interna entre la tablatutorial.crunchbase_acquisitions y la tabla tutorial.crunchbase_companies, pero en lugar de enumerar filas individuales, cuente el número de filas no nulas en cada tabla.,

probarlo a Ver la respuesta

la Práctica del Problema

Modificar la consulta anterior para ser un LEFT JOIN. Tenga en cuenta la diferencia en los resultados.

pruébelo vea la respuesta

ahora que tiene una idea de cómo left joins trabaja, intente este problema de agregación más difícil:

problema de práctica

cuente el número de empresas únicas (no cuente dos veces las empresas) y las empresas adquiridas únicas por estado., No incluir los resultados para los que no hay datos estatales, y ordenar por el número de empresas adquiridas de mayor a menor.

probarlo a Ver la respuesta

0