Ver Mensaje Individual
  #9 (permalink)  
Antiguo 01/08/2013, 07:54
Avatar de shake2427
shake2427
 
Fecha de Ingreso: julio-2011
Mensajes: 116
Antigüedad: 12 años, 9 meses
Puntos: 3
Respuesta: procedimientos almacenados error

Cita:
Iniciado por gnzsoloyo Ver Mensaje
El punto no va como concatenador de contenidos, Simplemente lo pones como te propongo, ya que la única forma de concatenar cadenas es con CONCAT(), al menos en MySQL.

En cuando a la ineficiencia, ten en cuenta que una subconsulta en el SELECT se ejecuta una vez por cada registro devuelto por la consulta principal. Imaginate con algunos miles de registros, cuál es el efecto de semejante sobrecarga.
Todo dato que peuda ser obtenido en el FROM es siempre mejor. Especialmente cuando se trata de campos FK, ya que existen índices que los administran, los cuales son usados por MySQL al momento de ejecutarla.
Son funcionales las subconsultas contra tablas que devuelven muy pocos registros (alta selectividad), por los parámetros dados, pero sin conocer tu base únicamente puedo hacer suposiciones teóricas.
De todos modos, por lo que puedo ver de las relaciones indicadas en tu query base, todo parece ser resoluble con INNER JOIN, por lo que no termino de comprender para qué o por qué razón quieres hacerlo con subconsultas en las columnas del SELECT.


gracias por tu ayuda.