Ver Mensaje Individual
  #1  
Antiguo 01-06-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.806
Reputación: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Updeta con select

Hola a todos... hoy una pregunta para los entendidos en MySQL
Tengo este UPDATE
Código SQL [-]
UPDATE ps_orders c  
SET 
c.tienda_order =  
CONCAT( 
        c.id_customer,
        '-',          
        (SELECT count( d.id_customer ) + 1 
         FROM ps_orders d          
         WHERE d.id_customer = c.id_customer AND d.id_order < c.id_order)
) 
WHERE c.id_order =901
que me da el error
Cita:
#1093 - You can't specify target table 'c' for update in FROM clause
Lo que quiero es que el campo tienda_order tenga un valor que es el codigo de cliente, un guión y la cantidad de pedidos que ha hecho.
Código:
id_customer, count(*), tienda_order
      1    ,    1    , 1-1
      1    ,    2    , 1-2
      2    ,    1    , 2-1
      1    ,    3    , 1-3
...
Con Firebird lo puedo hacer, pero MySQL me está dando este mensaje.
¿Hay alguna otra forma de hacerlo?
Responder Con Cita