Consulta SQL a Partir de Tu Pregunta

Consulta SQL a Partir de Tu Pregunta

Sé el primero en valorar 0 ✍️ TextoProgramación
análisiscódigoexplicaciónprogramación

Prompt

Actúa como persona de datos sénior que ya pasó una madrugada arreglando un informe que estaba precioso y contaba el mismo pedido dos veces, y que por eso nunca entrega una consulta sin entregar también la forma de comprobar si está bien. Contexto: mi base de datos es [QUÉ BASE Y VERSIÓN - EJ: PostgreSQL 15]. La pregunta que necesito responder es [LA PREGUNTA EN PALABRAS NORMALES, COMO SE LA CONTARÍAS A UN COMPAÑERO - EJ: cuántos clientes nuevos compraron más de una vez el último trimestre]. Estas son las tablas y columnas que tengo, y no hay ninguna otra: [PEGA AQUÍ CADA TABLA CON SUS COLUMNAS Y SUS TIPOS] El volumen es [TAMAÑO APROXIMADO - EJ: unos 2 millones de filas en pedidos]. Mi permiso es [QUÉ PUEDES HACER - EJ: solo lectura]. La zona horaria de los datos es [ZONA - EJ: UTC, y necesito el resultado en hora peninsular]. Tarea: escribir la consulta que responde exactamente a esa pregunta, explicar en palabras normales lo que hace y darme cómo comprobar el resultado. Reglas: 1. Usa solamente las tablas y columnas que he listado. Si falta algo para responder, di qué falta en vez de inventarte una columna. 2. Escribe solo lectura. Nada de DELETE, UPDATE, DROP ni ALTER, ni siquiera como sugerencia comentada. 3. Explica la consulta en palabras normales, bloque a bloque, diciendo qué está dejando fuera cada join y cada filtro. Quien lo lea no debería necesitar saber SQL para seguirlo. 4. Trata el valor nulo a propósito y di qué decisión has tomado: una fila sin valor entra en la cuenta, se queda fuera o pasa a cero. 5. Cuidado con lo que duplica filas. Si algún join puede multiplicar el resultado, señala dónde y enseña cómo lo has evitado. 6. Fechas y zonas horarias salen convertidas a la zona que he pedido, y el intervalo es explícito: di si el último día entra o no entra. 7. Entrega también una consulta de comprobación, más simple y por otro camino, que demuestre que el número de la primera está bien. 8. Si mi pregunta es ambigua, elige la lectura más común, sigue adelante y di al final qué lectura has usado y cuál sería la otra. 9. Formatea para que lo lea una persona: una cláusula por línea, alias cortos de tabla y comentario solo donde la línea no se explique sola. 10. Di una cosa que haría la consulta más rápida con el volumen que te he dicho, y di también cuándo no compensa. Formato de la respuesta: primero la consulta lista, en un bloque de código, sin texto en medio; después la explicación en palabras normales, bloque a bloque; después la consulta de comprobación, en otro bloque de código, con una frase que diga con qué tiene que cuadrar su resultado; después la lista de lo que has dado por supuesto; y al final la observación de rendimiento.

Cómo usar

Escribir la consulta es la parte fácil. Lo caro es descubrir una semana después que el número salió inflado porque un join duplicó filas, y el informe ya ha circulado. Este prompt entrega la consulta, la explicación en palabras normales y una segunda consulta para comprobar la primera. Funciona en ChatGPT, Claude y Gemini. 1. Pega el nombre de las columnas con sus tipos. Sin eso la IA se inventa una columna plausible y la consulta revienta en la base. 2. Haz la pregunta en palabras normales, como se la contarías a un compañero. Una pregunta traducida a medio SQL devuelve medio SQL. 3. Di la zona horaria de los datos: es el origen silencioso del informe con un día de diferencia. 4. Ejecuta la consulta de comprobación antes de mandarle el número a nadie. Si las dos no cuadran, el error está ahí. 5. Lee la lista de lo que se dio por supuesto: ahí aparece la decisión sobre las filas sin valor, que cambia el total. Consejo: guarda las consultas que funcionaron con la pregunta original encima. Se convierte en tu diccionario de la base.

Funciona con ChatGPT Claude Gemini

Valora este prompt

📖 Del blog de Prompteiro

Ver todos los artículos →

💡 También te puede interesar