Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/06/2016, 08:16
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: No Reconoce Columna creada por segunda consulta

Ni MySQL ni ningún DBMS te la van a reconocer...

"CAMPONUEVO" es, en realidad, el alias que le estás dando a la subconsulta, dentro del SELECT de la consulta mayor, y no es una columna de la subconsulta. Por consiguiente entra en las restricciones generales del SQL, que no permiten usar los alias de las columnas en la misma query que los define.
Para que te sirva, debería ser un campo devuelto por una tabla derivada, es decir una subconsulta en el FROM, y NO en el SELECT.


Código MySQL:
Ver original
  1. SELECT c.customers_id , c.customers_firstname, customers_lastname, cc.CAMPONUEVO
  2. FROM customers c
  3.     INNER JOIN
  4.      (SELECT GROUP_CONCAT(`entry_firstname`,`entry_lastname`,`entry_telephone`) CAMPONUEVO , customers_id
  5.         FROM `address_book`) cc  
  6.     ON  c.customers_id= cc.customers_id  
  7.     c.customers_firstname LIKE '%dani%' OR
  8.     c.customers_lastname LIKE '%dani%' OR
  9.     CAMPONUEVO LIKE '%dani%'
  10. ORDER BY c.customers_id DESC
  11. LIMIT 0,50 ;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)