FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#23
|
|||
|
|||
Cita:
En referencia a las Llaves foráneas cuando tomé el proyecto también noté lo mismo en la Tabla FACTURAS_VENTAS con sus tablas hijas o dependiente en fin a pesar de no poseer dicha llave foraneas no ha perdido integridad en cuanto a las transacciones a cada tabla. Casi son dos millones de registros. en Fin realizé una recreación de los indixes de todas las tablas leyendo un poco este link https://firebird21.wordpress.com/tag/reindex/ la cual al ejecutarlo se corrigió el problema de consulta también cree un nuevo campo la cual guarda solamente el tipo de dato de FECHA sin la hora para evitar usar la función cast de Firebird en la consulta y tenias razón si mejoró notablemente. También el consejo de: Cita:
Antes de quitar la función DESCENDING Código:
Query Performance ------------------------------------------------ Prepare : 16 ms Execute : 0 ms Avg fetch time: 0 ms Memory Usage ------------------------------------------------ Current: 98.30 MB Max : 98.35 MB Buffers: 2048 Database Operations ------------------------------------------------ Reads : 10167 Writes : 0 Fetches: 6145639 Plan: ------------------------------------------------ PLAN SORT (JOIN (FACTURAS_VENTAS NATURAL, FAC_CLIENTE INDEX (IDX_FAC_CLIENTE), CLIENTES INDEX (RDB$PRIMARY85), FAC_CAJA INDEX (IDX_FAC_CAJA), CAJAS INDEX (RDB$PRIMARY77))) Table Operations: +--------------------------+-----------+-----------+-----------+-----------+-----------+ | Table Name | Index | Non-Index | Updates | Deletes | Inserts | | | reads | reads | | | | +--------------------------+-----------+-----------+-----------+-----------+-----------+ | FACTURAS_VENTAS| 0 | 1,329,368 | 0 | 0 | 0 | | FAC_CAJA| 182,404 | 0 | 0 | 0 | 0 | | FAC_CLIENTE| 182,404 | 0 | 0 | 0 | 0 | | CAJAS| 182,404 | 0 | 0 | 0 | 0 | | CLIENTES| 182,404 | 0 | 0 | 0 | 0 | +--------------------------+-----------+-----------+-----------+-----------+-----------+ Quitando la función DESCENDING Código:
Query Performance ------------------------------------------------ Prepare : 0 ms Execute : 0 ms Avg fetch time: 0 ms Memory Usage ------------------------------------------------ Current: 33.32 MB Max : 98.35 MB Buffers: 2048 Database Operations ------------------------------------------------ Reads : 8725 Writes : 0 Fetches: 2316311 Plan: ------------------------------------------------ PLAN JOIN (FACTURAS_VENTAS NATURAL, FAC_CLIENTE INDEX (IDX_FAC_CLIENTE), CLIENTES INDEX (RDB$PRIMARY85), FAC_CAJA INDEX (IDX_FAC_CAJA), CAJAS INDEX (RDB$PRIMARY77)) Table Operations: +--------------------------+-----------+-----------+-----------+-----------+-----------+ | Table Name | Index | Non-Index | Updates | Deletes | Inserts | | | reads | reads | | | | +--------------------------+-----------+-----------+-----------+-----------+-----------+ | FACTURAS_VENTAS| 0 | 1,147,164 | 0 | 0 | 0 | | FAC_CAJA| 200 | 0 | 0 | 0 | 0 | | FAC_CLIENTE| 200 | 0 | 0 | 0 | 0 | | CAJAS| 200 | 0 | 0 | 0 | 0 | | CLIENTES| 200 | 0 | 0 | 0 | 0 | +--------------------------+-----------+-----------+-----------+-----------+-----------+ - recrear los indice ya que en la db habia 160 mil registros de diferencia entre mi tabla de desarrollo y la tabla de producción sin indexar eso también jugó un papel importante así que significativamente la recreación de los indice debe de realizarse cada cierto tiempo en fin no encontré por el momento alguna sugerencia en ese tema. - usar la función Cast de firebird para convertir la fecha si afecta algo en el rendimiento de la consulta Mejor utilizar el tipo de Dato correspondiente a sólo Fecha - El uso de las funciones hay que saber cuando hay que usarla en caso de consultas de búsquedas de mucha cantidad de registros. Esto juega un papel importante (Tener bien claro cada consulta). Doy solucionado dejaré terminado este tema. Saludos y Bendiciones a todos; novato_erick |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Consulta update desde una consulta select | jafera | SQL | 3 | 08-05-2015 19:56:02 |
Consulta SQL basada en otra consulta anterior | jafera | SQL | 5 | 19-11-2013 01:07:37 |
Optimizando velocidad de mis páginas | lucasarts_18 | PHP | 2 | 25-09-2008 19:42:47 |
Optimizando Creación de Formularios MDI | nelostanley | OOP | 20 | 08-01-2008 03:00:36 |
Realizar una consulta sobre los registros que devuelve otra consulta | Borjaserrano | Firebird e Interbase | 12 | 01-10-2007 23:19:44 |
|