Escribiré y arreglaré consultas SQL para tu base de datos
Analista de datos para Excel, SQL y limpieza de datos
Acerca de este Servicio
Envíame la pregunta en inglés simple. Recibirás una consulta que funciona, con comentarios que explican cada paso.
El SQL peligroso no es la consulta que da error. Es la consulta que devuelve un número.
Una cláusula WHERE en un LEFT JOIN la convierte en un INNER JOIN. Sin error, y 1,492 clientes desaparecieron del informe.
Un join contra una tabla con claves duplicadas. Los ingresos resultaron ser tres veces más altos de lo correcto. Aún parecía un número plausible.
Ninguno de esos lanza un error. Todos cambian tu respuesta. Por eso verifico el conteo de filas antes y después de cada join, y te digo qué revisé.
Lo que escribo: joins entre tres o más tablas, funciones de ventana, CTEs que dividen una consulta larga en pasos legibles, agregaciones que coinciden con tu informe, correcciones para una consulta que devuelve el conteo incorrecto y reescrituras para una consulta demasiado lenta.
PostgreSQL, MySQL, SQL Server, SQLite y BigQuery.
Diez años trabajando con datos que tenían que ser correctos. Proyectos públicos en michaelnocito.github.io.
Tipo de base de datos:
Base de datos relacional
Plataforma:
BigQuery
•
mySQL
•
PostgreSQL
•
SQL Server
Experiencia:
SQL
•
DQL
•
Rendimiento
•
Optimización de consultas
Mi porfolio
FAQ
Traducción automática
¿Necesitas acceso a mi base de datos?
No, y preferiría no tenerla. Envíame los nombres de tus tablas y columnas, o un script CREATE TABLE, o una pequeña muestra exportada. Escribo contra eso y tú lo ejecutas.
Mi consulta ya funciona. ¿Puedes verificar que esté bien?
Sí, y esa es la forma en que más me gusta. Envíame la consulta y lo que esperas que devuelva.
¿Qué pasa si no sé cómo se llaman mis tablas?
Envía una captura de pantalla de tu esquema, o exporta las primeras diez filas de cada tabla. Eso es suficiente para trabajar.
¿Puedes hacer que una consulta lenta sea más rápida?
A menudo. Envíame la consulta y la salida de EXPLAIN si puedes obtenerla. Te diré honestamente si la solución es un índice en lugar de una reescritura.

