sql.moscowConsultas · informes · migración
sql.moscow / DESARROLLO Y OPTIMIZACIÓNPostgreSQL · Greenplum · Oracle

SQL complejo.
Un resultado claro.

Ayuda con consultas SQL, errores, informes, exportaciones, PostgreSQL, Greenplum, Oracle PL/SQL y migración de lógica SQL entre sistemas de gestión de bases de datos.

query.sqlEjemplo de consulta
SELECT department,
       COUNT(*) AS total
FROM requests
WHERE created_at >=
      CURRENT_DATE - INTERVAL '30 days'
GROUP BY department;
Ejemplo ilustrativo · sin datos reales
Antes de empezar el trabajo

Empezamos por la tarea y un ejemplo reproducible.

Envíe la consulta, el texto del error, la versión del sistema de gestión de bases de datos y un ejemplo anonimizado. No se necesitan contraseñas, claves de acceso ni datos personales reales.

Cómo enviar una tarea ↗
Servicios

Servicios disponibles

servicio

Corrección de consultas SQL

Errores de sintaxis, tipos, JOIN, GROUP BY, CTE y funciones de ventana, filas duplicadas, sumas incorrectas y resultados vacíos.

desde 5 000 ₽
servicio

Optimización de consultas

Análisis de consultas lentas, reescritura de JOIN y subconsultas, recomendaciones sobre índices y el plan de ejecución.

desde 15 000 ₽
servicio

PostgreSQL / Greenplum

PL/pgSQL, funciones, tablas temporales, consultas analíticas, particularidades de Greenplum, errores de tipos y de estructura del resultado.

desde 15 000 ₽
servicio

Oracle PL/SQL → PostgreSQL

Migración de lógica SQL, funciones y procedimientos: DECODE, NVL, fechas, MERGE, cursores, paquetes, PL/pgSQL.

desde 25 000 ₽
servicio

Informes y exportaciones

Consultas SQL para Excel, BI, CRM, ERP, ventas, existencias, clientes, pagos, documentos y conciliación de datos.

desde 10 000 ₽
servicio

Auditoría de código SQL

Análisis de SQL escrito por terceros, búsqueda de errores, simplificación de la lógica, comentarios, documentación y reescritura de la consulta.

desde 20 000 ₽
Errores de SQL

Corrección de consultas y análisis de errores

Puede enviar el texto de la consulta, el error, la descripción de las tablas y el resultado esperado. El acceso a la base de datos no siempre es obligatorio.

  • relation does not exist
    Comprobación de esquemas, nombres de tablas, mayúsculas y minúsculas, search_path y contexto de ejecución.
  • column does not exist
    Comprobación de alias, JOIN, CTE, consultas anidadas y ámbito de visibilidad.
  • structure of query does not match
    Corrección de los tipos devueltos y del orden de las columnas en funciones de PostgreSQL.
  • syntax error at or near
    Búsqueda de errores de sintaxis, incompatibilidades entre sistemas de gestión de bases de datos y construcciones incorrectas.
  • duplicados y sumas incorrectas
    Comprobación de JOIN, agrupaciones, agregaciones y nivel de detalle de los datos.
  • consulta lenta
    Análisis de la lógica, subconsultas innecesarias, filtros, índices y plan de ejecución.
Migración

Oracle PL/SQL → PostgreSQL / Greenplum

Migrar la lógica SQL requiere adaptar las funciones, los tipos, las fechas, la lógica de procedimientos y el comportamiento del sistema de gestión de bases de datos, en lugar de sustituir palabras mecánicamente.

Habitual en Oracle

  • DECODE
  • NVL
  • MERGE
  • CONNECT BY
  • paquetes PL/SQL
  • lógica basada en cursores

Adaptación

  • CASE
  • COALESCE
  • INSERT ON CONFLICT / lógica independiente
  • WITH RECURSIVE
  • funciones PL/pgSQL
  • enfoque set-based
Greenplum: al migrar, es importante tener en cuenta la distribución de los datos, las restricciones de UPDATE/DELETE, las tablas temporales, las funciones y las particularidades de la arquitectura MPP.
Informes

Exportaciones SQL para analítica y negocio

Preparación de consultas para exportar datos de ventas, clientes, existencias, pagos, documentos, productos, grupos, períodos y estados.

  • Excel / CSV
    Consulta adaptada a la estructura de exportación necesaria.
  • Power BI / BI
    Preparación de conjuntos de datos y data marts analíticos.
  • CRM / ERP
    Consultas de clientes, documentos, operaciones y pagos.
  • Conciliación de datos
    Búsqueda de duplicados, discrepancias, omisiones y errores de agregación.
Tarifas

Precios de tareas de SQL

Análisis inicial de la tareadesde 3 000 ₽
Corrección de una consulta SQL sencilladesde 5 000 ₽
Desarrollo de una exportación SQLdesde 10 000 ₽
Optimización de una consulta lentadesde 15 000 ₽
Función PL/pgSQLdesde 20 000 ₽
Migración de Oracle PL/SQL → PostgreSQLdesde 25 000 ₽
Auditoría de código SQLdesde 20 000 ₽
Tarea urgentea convenir

El precio final depende del sistema de gestión de bases de datos, la cantidad de código, la disponibilidad del esquema de las tablas, la urgencia, las pruebas necesarias y la complejidad de la lógica de negocio.

Cómo se desarrolla el trabajo

Proceso de trabajo

1. Usted envía la tarea

La consulta, el error, el sistema de gestión de bases de datos, la estructura de las tablas, el resultado esperado y las restricciones.

2. Se aclara la lógica

Qué datos se necesitan, cómo se calcula el resultado y dónde se produce el error o la ralentización.

3. Se prepara la solución

SQL corregido, explicación, recomendaciones y, si es necesario, opciones de optimización.

FAQ

Preguntas frecuentes

¿Se puede ayudar sin acceso a la base de datos?

Sí, para un análisis preliminar suele bastar con el texto de la consulta, el error, la estructura de las tablas y el resultado esperado. Para la optimización conviene disponer del plan de ejecución y de una muestra de los volúmenes de datos.

¿Se puede adaptar Oracle SQL a PostgreSQL?

Sí. Hay que tener en cuenta las diferencias en las funciones, los tipos de datos, las fechas, la lógica de procedimientos y la sintaxis. En ocasiones es necesario cambiar el enfoque en lugar de hacer una sustitución directa.

¿Se puede acelerar una consulta?

Sí, si se dispone del texto de la consulta, la estructura de las tablas, una muestra de los volúmenes y, preferiblemente, EXPLAIN / EXPLAIN ANALYZE. También se pueden dar recomendaciones sobre índices y reescritura de la lógica.

¿Se puede crear una exportación para Excel o BI?

Sí. Se puede preparar una consulta SQL con los campos, filtros, agrupaciones, períodos y formato del resultado que necesite.

Cómo comprobar una consulta corregida y comparar el rendimiento

Antes de modificar el SQL conviene dejar constancia del resultado que se considera correcto: columnas que lo componen, reglas de selección, nivel de detalle, repeticiones permitidas y forma de calcular las sumas. El ejemplo de control incluye un esquema pequeño, registros anonimizados y la respuesta esperada. Este conjunto ayuda a distinguir un error de sintaxis de una interpretación incorrecta del informe.

La comprobación de la optimización consta de dos partes. Primero se comparan los resultados de la consulta original y de la modificada: número de filas, claves, sumas de control de los indicadores y ejemplos dudosos. Después se comparan las mediciones sobre un volumen de datos acordado. Una respuesta rápida que pierde filas no se considera un resultado útil de la optimización.

  • Se indican la versión del sistema de gestión de bases de datos, los parámetros de la consulta y el volumen habitual de las tablas.
  • Se guardan el plan de ejecución, las condiciones de medición y la información sobre la carga concurrente.
  • Para los cambios en los índices se describen los comandos propuestos y las restricciones asociadas.
  • En las explicaciones finales se distinguen la lógica corregida, el efecto obtenido y los cuellos de botella que persisten.

En PostgreSQL, el modo EXPLAIN ANALYZE ejecuta realmente la consulta examinada. Por ello, su uso para operaciones que modifican datos y consultas de gran carga se acuerda previamente; es preferible utilizar una copia preparada para pruebas. Un plan sin datos reales es útil para el análisis inicial, pero no sustituye la comprobación del resultado obtenido en el escenario de uso.

Qué comprobar al migrar lógica SQL entre sistemas de gestión de bases de datos

La migración de un informe o procedimiento se evalúa por su comportamiento con los datos acordados. Además de comprobar que se ejecuta correctamente, se verifican las reglas de tratamiento de valores ausentes, conversiones de tipos, redondeo, fechas y límites temporales. Incluso un pequeño cambio en una condición de unión o un filtro puede alterar las sumas finales en una consulta aparentemente similar.

Conjunto de control para la migración

  1. SQL original o código del procedimiento con la descripción de los parámetros y del resultado esperado.
  2. Estructura de las tablas utilizadas, tipos de columnas, restricciones y dependencias de otras funciones.
  3. Ejemplos de datos habituales y casos límite: ausencia de un registro, repetición, valor vacío, cambio de fecha, importe negativo o cero.
  4. Resultado del sistema original para estos ejemplos y explicación de las reglas de negocio relevantes.
  5. Condiciones de ejecución: periodicidad, volumen de datos, tiempo permitido y restricciones de acceso.

Si el procedimiento modifica datos, se examinan por separado la secuencia de operaciones, la gestión del error y el estado de las tablas tras una ejecución incompleta. Para las consultas de informes se comprueba que el nivel de detalle sea el mismo: resultado por documento, línea de documento o grupo de objetos. Al reescribir la consulta no se deben sustituir estos niveles sin advertirlo.

Después de la migración conviene guardar el script SQL, la lista de cambios y los resultados de control. Las dependencias no resueltas se indican explícitamente: por ejemplo, no se ha facilitado una función invocada o se desconoce la regla de cumplimentación de un campo. Esta lista permite continuar el trabajo desde una cuestión concreta y acordar las comprobaciones posteriores sin facilitar datos de producción ni accesos innecesarios.

Solicitud

Envíe una tarea de SQL para su análisis

Adjunte el texto de la consulta, el error, la estructura de las tablas, el sistema de gestión de bases de datos y el resultado esperado. Se puede empezar sin acceso a la base de datos, a partir del código y la descripción.

  • corrección de una consulta SQL;
  • optimización de un informe lento;
  • migración de Oracle PL/SQL;
  • exportación para Excel, BI, CRM o ERP.
SQL, PostgreSQL, Greenplum, Oracle PL/SQL, informes y exportacionesrequest@sql.moscow
EscribirConsultar el encargo ↗