Skip to content

Instantly share code, notes, and snippets.

@danielmoralesp
Last active May 18, 2020 21:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save danielmoralesp/3a4793ae05b11da41bf2ab6d40c40c8f to your computer and use it in GitHub Desktop.
Save danielmoralesp/3a4793ae05b11da41bf2ab6d40c40c8f to your computer and use it in GitHub Desktop.
SQL project

Exploración de datos con SQL

Como la mayoría de las organizaciones, nuestra empresa utiliza SQL (Structured Query Language) para acceder a su base de datos.

Una base de datos es un conjunto de datos almacenados en una computadora. Estos datos suelen estar estructurados en tablas. Las tablas pueden crecer en tamaño y tener una multitud de columnas y registros.

Las hojas de cálculo, como Microsoft Excel y Google Sheets, permiten ver y manipular los datos directamente: con la selección, el filtrado, la clasificación, etc. Aplicando varias de estas operaciones se puede obtener el subconjunto de datos que se busca.

SQL (se pronuncia "S-Q-L" o "sequel") permite escribir consultas que definen el subconjunto de datos que se busca. A diferencia de Excel y Sheets, su computadora y SQL se encargarán de cómo obtener los datos; usted puede concentrarse en los datos que desea. Puede guardar estas consultas, refinarlas, compartirlas y ejecutarlas en diferentes bases de datos.

Es una gran manera de acceder a los datos y un gran punto de entrada a la programación porque su sintaxis (el vocabulario específico que da instrucciones a la computadora) es muy legible para los humanos. Sin conocer ningún SQL, todavía podría ser capaz de adivinar lo que hará cada comando.

En su primer día en la empresa, Catherine quiere familiarizarse con los datos de la compañía, así que se conecta a la base de datos y utiliza SQL para explorar la base de datos.

La base de datos que le fue entregada se encuentre en el siguiente enlace: https://drive.google.com/file/d/1ryIg6SPgpT4mdBiuT0MzHZdvxuyxSYk_/view?usp=sharing

  1. Empiece explorando cada uno de las tablas, active los headers y mire el esquema

Creando embudos de uso

Los visitantes de la página web siguen un flujo de trabajo simple:

  1. Buscar los artículos disponibles para la venta
  2. Hacen clic en un icono para iniciar el proceso de compra
  3. Ingresan la información de pago para completar su compra

No todos los usuarios que navegan en el sitio web encontrarán algo que les guste lo suficiente como para pagar, y no todos los usuarios que inician el proceso de pago terminarán de introducir su información de pago para hacer una compra.

Este tipo de proceso de varios pasos en el que algunos usuarios salen en cada paso se llama embudo.

Catherine quiere determinar qué porcentaje de usuarios pasa por cada paso del embudo para poder recomendar mejoras en el sitio web.

  1. Catherine va a combinar los datos de tres tablas diferentes:

browse - da las marcas de tiempo de los usuarios que visitaron diferentes páginas de descripción de artículos checkout - da las marcas de tiempo de los usuarios que visitaron la página de checkout purchase - da las marcas de tiempo de cuando los usuarios completan su compra

Usando SQL, encuentra que el 24% de todos los usuarios que navegan pasan al checkout. El 89% de los que llegan al checkout compran.

  • Saque el porcentaje de usuarios que pasaron de browse a checkout y llame esa columna como browse_to_checkout_percent. No olvide redondear el resultado
  • En el mismo query saque el porcentaje de usuarios que pasaron del checkout al purchase y llame esa columna como checkout_to_purchase_percent. No olvide redondear el resultado
  • El resultado deberia mostrarse de la siguiente forma

Screenshot from 2020-05-18 15-56-57

  • Por tanto deberia correr dos JOINS en el mismo query: entre browse, checkout y purchase
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment