Los actuales sistemas de IA pueden proporcionar una ayuda inestimable en la construcción de instrucciones de SQL. Sin embargo, no son sustitutos del conocimiento humano. Como en la mayoría de situaciones donde podemos emplear a estos sistemas, la IA puede actuar como un excelente copiloto pero sigue necesitando la intervención de un experto en SQL que filtre y guíe sus resultados.
La IA es como el piloto automático de un avión. Puede hacer volar un avión el 90% del tiempo, pero se necesita de un piloto humano experto para actuar en esas circunstancias especiales donde se producen turbulencias o fallan los sistemas. Para ese 10%, el experto humano debe estar bien entrenado y preparado.
Si te haces esta pregunta, contéstate con otra pregunta ¿te arriesgarías a volar en un avión en el que el piloto no tuviera la experiencia y entrenamiento para ese 10% de situaciones?
Alucinaciones en la lógica relacional. La IA rara vez comete errores en la sintaxis de SQL, pero los fallos de lógica relacional sí son posibles (confundiendo un operador con otro, por ejemplo INNER JOIN cuando debe ser OUTER JOIN, etc.) y afectar mucho a los resultados. Sin el conocimiento de SQL adecuado por parte de un supervisor humano, estos fallos serían imperceptibles, alterando la realidad de los datos mostrados.
Auditoría, validación y responsabilidad de los datos: En el entorno profesional, la responsabilidad del dato es del ingeniero o analista, no del modelo de lenguaje. Si una consulta generada por IA calcula mal una liquidación o destruye índices en producción, la excusa "es lo que me dio la IA" no es aceptable. Para auditar y validar lo que la IA propone, es imprescindible entender qué hace cada línea de código.
Rendimiento, optimización e impacto en costes: La IA tiende a generar código ingenuo o redundante. En bases de datos con millones de registros, una consulta mal estructurada (por ejemplo, omitiendo el uso de un índice o abusando de subconsultas no correlacionadas) puede colapsar un servidor o disparar los costos de computación en la nube. Optimizar una consulta mediante un plan de ejecución (EXPLAIN) requiere un conocimiento profundo de la arquitectura de la base de datos.
Falta de conocimiento del diseño conceptual y sus implicaciones en el lógico: Para construir una instrucción SQL no sólo debo conocer la sintaxis, sino también conocer cómo se relacionan las entidades a nivel conceptual. Si no se sabe interpretar el esquema conceptual, no se sabrá ni siquiera cómo estructurar un prompt correcto para pedirle a la IA lo que se necesita.
Si ya has comprendido que la IA puede ser un excelente copiloto, pero nunca un sustituto de tu conocimiento, pasa a la siguiente sección donde veremos cómo podemos configurar nuestra IA para que actúe como tutor en el proceso de aprendizaje de SQL, maximizando nuestro entrenamiento como pilotos de SQL para poder actuar de forma eficiente en ese 10% del tiempo.
Usa el siguiente prompt para configurar nuestro sistema IA como tutor de SQL:
Actúa como un tutor universitario experto en bases de datos relacionales y SQL. Tu objetivo es guiarme para que yo construya la consulta por mí mismo, SIN darme el código SQL final ni resolver el ejercicio directamente.
Reglas que debes seguir estrictamente:
1. NUNCA escribas la sentencia SQL completa ni bloques de código que resuelvan el problema.
2. Si cometo un error de sintaxis o de lógica, señálame la zona del error y hazme una pregunta guía para que descubra qué está fallando.
3. Hazme preguntas de tipo socrático sobre la estructura de los datos:
- ¿Qué tablas contienen la información que necesitas?
- ¿Cómo se relacionan esas tablas (claves primarias y foráneas)?
- ¿Qué filas necesitas filtrar (WHERE/HAVING)?
- ¿Se requieren agrupaciones (GROUP BY) o funciones de agregación?
4. Si me quedo atascado, dame pistas conceptuales (explicando cómo funciona un LEFT JOIN vs INNER JOIN en teoría), pero sin usar los nombres exactos de mis tablas ni mis columnas en el código de ejemplo.
5. Da respuestas cortas, directas y motivadoras. Una o dos preguntas por turno como máximo para no abrumarme.
Para empezar, pídeme que te proporcione el esquema de mi base de datos (o la estructura de las tablas) y el enunciado del ejercicio que intentó resolver.