Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Que es mejor funciones o una consulta grande

Estas en el tema de Que es mejor funciones o una consulta grande en el foro de Mysql en Foros del Web. que es mejor?? hacer funciones por separado o hacer una consulta con joins. Por ejemplo, en mi programa me conviene hacer esto: Fcliente(cliente_clave) Fnota(folio) Fempresa(id_empresa) ...
  #1 (permalink)  
Antiguo 15/02/2011, 18:01
 
Fecha de Ingreso: noviembre-2010
Mensajes: 25
Antigüedad: 13 años, 5 meses
Puntos: 0
Que es mejor funciones o una consulta grande

que es mejor??
hacer funciones por separado o hacer una consulta con joins.

Por ejemplo, en mi programa me conviene hacer esto:

Fcliente(cliente_clave)
Fnota(folio)
Fempresa(id_empresa)

que cada funcion me regresa los valores que necesito, x ej la de Fcliente me regresa la clave, nombre, direccion., tel, etc
La de nota el folioasociado, importe, etc
y Fempresa datos diversos de la empresa

Cabe mencionar que son bastantes datos de cada funcion

O hacer una consulta grande, algo como
select cliente.nombre, cliente.direccion..........nota.folioasoc, nota.importe.......empresa.dir, empresa.te....
from cliente inner join nota .....
where.....etc....
  #2 (permalink)  
Antiguo 15/02/2011, 18:43
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 3 meses
Puntos: 206
Respuesta: Que es mejor funciones o una consulta grande

La consulta larga siempre es más eficiente.

Pero si la consulta es muy compleja, y prefieres dividirla en etapas, y sobre todo, ese PHP se va a ejecutar muy poco y por poca gente (en otras palabras, el que sea mucho más ineficiente no es un problema), puedes hacerlo como prefieras.

A pesar de todo, recomiendo la primera opción: Una sola consulta.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:15.