Drop files here

SQL upload ( 0 ) x -

Page-related settings Click on the bar to scroll to top of page
Press Ctrl+Enter to execute query Press Enter to execute query
ascending
descending
Order:
Debug SQL
Count
Execution order
Time taken
Order by:
Group queries
Ungroup queries
Collapse Expand Show trace Hide trace Count : Time taken :
Options
Set default





Collapse Expand Requery Edit Explain Profiling Query failed Database : Queried time :
Browse mode
Customize browse mode.
Browse mode
Documentation Use only icons, only text or both. Restore default value
Documentation Use only icons, only text or both. Restore default value
Documentation Whether a user should be displayed a "show all (rows)" button. Restore default value
Documentation Number of rows displayed when browsing a result set. If the result set contains more rows, "Previous" and "Next" links will be shown. Restore default value
Documentation SMART - i.e. descending order for columns of type TIME, DATE, DATETIME and TIMESTAMP, ascending order otherwise. Restore default value
Documentation Highlight row pointed by the mouse cursor. Restore default value
Documentation Highlight selected rows. Restore default value
Documentation Restore default value
Documentation Restore default value
Documentation Repeat the headers every X cells, 0 deactivates this feature. Restore default value
Documentation Maximum number of characters shown in any non-numeric column on browse view. Restore default value
Documentation These are Edit, Copy and Delete links. Restore default value
Documentation Whether to show row links even in the absence of a unique key. Restore default value
Documentation Default sort order for tables with a primary key. Restore default value
Documentation When browsing tables, the sorting of each table is remembered. Restore default value
Documentation For display Options Restore default value
SELECT * FROM `proc`
Edit inline ] [ Edit ] [ Explain SQL ] [ Create PHP code ] [ Refresh ]
Full texts db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment character_set_client collation_connection db_collation body_utf8 aggregate
Edit Edit Copy Copy Delete Delete
DELETE FROM proc WHERE `proc`.`db` = 'losnaranjos' AND `proc`.`name` = 'sp_reemplazar_libro_sueldo' AND `proc`.`type` = 'PROCEDURE'
losnaranjos sp_reemplazar_libro_sueldo PROCEDURE sp_reemplazar_libro_sueldo SQL CONTAINS_SQL NO DEFINER

    IN p_id_liquidacion INT

BEGIN
    -- Marcar libros anteriores como eliminados
    UPDATE libros_sueldo 
    SET estado = 'eliminado',
        observaciones = CONCAT(
            COALESCE(observaciones, ''), 
            '\n[', NOW(), '] Reemplazado por nuevo libro'
        )
    WHERE id_liquidacion = p_id_liquidacion 
      AND estado = 'activo';
      
    -- Retornar cantidad de libros marcados como eliminados
    SELECT ROW_COUNT() as libros_reemplazados;
END
root@localhost 2025-10-03 09:28:47 2025-10-03 09:28:47 NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTIO... utf8mb4 utf8mb4_unicode_ci utf8mb4_general_ci
BEGIN
    -- Marcar libros anteriores como eliminados
    UPDATE libros_sueldo 
    SET estado = 'eliminado',
        observaciones = CONCAT(
            COALESCE(observaciones, ''), 
            '\n[', NOW(), '] Reemplazado por nuevo libro'
        )
    WHERE id_liquidacion = p_id_liquidacion 
      AND estado = 'activo';
      
    -- Retornar cantidad de libros marcados como eliminados
    SELECT ROW_COUNT() as libros_reemplazados;
END
NONE
Edit Edit Copy Copy Delete Delete
DELETE FROM proc WHERE `proc`.`db` = 'losnaranjos' AND `proc`.`name` = 'sp_actualizar_contadores_libro' AND `proc`.`type` = 'PROCEDURE'
losnaranjos sp_actualizar_contadores_libro PROCEDURE sp_actualizar_contadores_libro SQL CONTAINS_SQL NO DEFINER

    IN p_id_libro INT

BEGIN
    UPDATE libros_sueldo ls
    SET 
        ls.empleados_procesados = (
            SELECT COUNT(DISTINCT dni) 
            FROM libros_sueldo_detalle 
            WHERE id_libro = p_id_libro
        ),
        ls.empleados_con_firma = (
            SELECT COUNT(DISTINCT dni) 
            FROM libros_sueldo_detalle 
            WHERE id_libro = p_id_libro AND tiene_firma = 1
        )
    WHERE ls.id_libro = p_id_libro;
    
    -- Retornar los valores actualizados
    SELECT 
        empleados_procesados,
        empleados_con_firma
    FROM libros_sueldo
    WHERE id_libro = p_id_libro;
END
root@localhost 2025-10-03 09:28:47 2025-10-03 09:28:47 NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTIO... utf8mb4 utf8mb4_unicode_ci utf8mb4_general_ci
BEGIN
    UPDATE libros_sueldo ls
    SET 
        ls.empleados_procesados = (
            SELECT COUNT(DISTINCT dni) 
            FROM libros_sueldo_detalle 
            WHERE id_libro = p_id_libro
        ),
        ls.empleados_con_firma = (
            SELECT COUNT(DISTINCT dni) 
            FROM libros_sueldo_detalle 
            WHERE id_libro = p_id_libro AND tiene_firma = 1
        )
    WHERE ls.id_libro = p_id_libro;
    
    -- Retornar los valores actualizados
    SELECT 
        empleados_procesados,
        empleados_con_firma
    FROM libros_sueldo
    WHERE id_libro = p_id_libro;
END
NONE
Edit Edit Copy Copy Delete Delete
DELETE FROM proc WHERE `proc`.`db` = 'losnaranjos' AND `proc`.`name` = 'fn_obtener_estadisticas_libro' AND `proc`.`type` = 'FUNCTION'
losnaranjos fn_obtener_estadisticas_libro FUNCTION fn_obtener_estadisticas_libro SQL READS_SQL_DATA YES DEFINER
p_id_libro INT
longtext CHARSET utf8mb4 COLLATE utf8mb4_bin
BEGIN
    DECLARE v_resultado JSON;
    
    SELECT JSON_OBJECT(
        'total_empleados', COUNT(DISTINCT dni),
        'empleados_validados', COUNT(DISTINCT CASE WHEN empleado_encontrado = 1 THEN dni END),
        'empleados_con_firma', COUNT(DISTINCT CASE WHEN tiene_firma = 1 THEN dni END),
        'empleados_sin_validar', COUNT(DISTINCT CASE WHEN empleado_encontrado = 0 THEN dni END),
        'porcentaje_validados', ROUND(
            COUNT(DISTINCT CASE WHEN empleado_encontrado = 1 THEN dni END) * 100.0 / 
            NULLIF(COUNT(DISTINCT dni), 0), 2
        ),
        'porcentaje_firmados', ROUND(
            COUNT(DISTINCT CASE WHEN tiene_firma = 1 THEN dni END) * 100.0 / 
            NULLIF(COUNT(DISTINCT dni), 0), 2
        )
    ) INTO v_resultado
    FROM libros_sueldo_detalle
    WHERE id_libro = p_id_libro;
    
    RETURN v_resultado;
END
root@localhost 2025-10-03 09:28:48 2025-10-03 09:28:48 NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTIO... utf8mb4 utf8mb4_unicode_ci utf8mb4_general_ci
BEGIN
    DECLARE v_resultado JSON;
    
    SELECT JSON_OBJECT(
        'total_empleados', COUNT(DISTINCT dni),
        'empleados_validados', COUNT(DISTINCT CASE WHEN empleado_encontrado = 1 THEN dni END),
        'empleados_con_firma', COUNT(DISTINCT CASE WHEN tiene_firma = 1 THEN dni END),
        'empleados_sin_validar', COUNT(DISTINCT CASE WHEN empleado_encontrado = 0 THEN dni END),
        'porcentaje_validados', ROUND(
            COUNT(DISTINCT CASE WHEN empleado_encontrado = 1 THEN dni END) * 100.0 / 
            NULLIF(COUNT(DISTINCT dni), 0), 2
        ),
        'porcentaje_firmados', ROUND(
            COUNT(DISTINCT CASE WHEN tiene_firma = 1 THEN dni END) * 100.0 / 
            NULLIF(COUNT(DISTINCT dni), 0), 2
        )
    ) INTO v_resultado
    FROM libros_sueldo_detalle
    WHERE id_libro = p_id_libro;
    
    RETURN v_resultado;
END
NONE
With selected: With selected:
Query results operations Copy to clipboard Copy to clipboard Export Export Display chart Display chart Create view Create view