Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: elmatador2 en 12 Julio 2016, 02:35 am



Título: consulta a estas tablas en mysql
Publicado por: elmatador2 en 12 Julio 2016, 02:35 am
hola gente, bueno en esta ocasion les pido ayuda por la siguiente razon:

tengo 2 tablas en mysql:

characters
la cual tiene como filas:
obj_id                                    'esta guarda el id del personaje
char_name                             'este es el nombre del personaje

y esta otra tabla:

 items
la cual tiene como filas:
owner_id                               'este es el id del personaje
object_id                               'este es el id especifico de un item
item_id                                 'este es el id del item
count                                    'este es la cantidad del item


les pongo un ejemplo de como es la base de datos asi entienden un poco mejor a lo que me refiero


characters

obj_id         char_name
123              maiky
124              urca




 items:

owner_id        object_id        item_id        count                                   
123                  1                    57              1
123                  2                    13              2
123                  3                    22             1
124                  4                    57             3
124                 5                     13             22
124                 6                     22             7


yo tengo de referencia el char_name "maiky" por ejemplo y a partir de ese nombre necesito conseguir el obj_id "123" por ejemplo

una vez q consegui ese obj_id que es igual al owner_id, tengo q conseguir por ejemplo el object_id "1" que pertenece al item_id "57" para poder modificar la fila count a partir del object_id




Título: Re: consulta a estas tablas en mysql
Publicado por: soyloqbuskas en 14 Julio 2016, 16:02 pm
ˇBuenas  elmatador2!

No he entendido muy bien lo que quieres hacer....pero creo que es lo siguiente.

Quieres hacer un select de la union de las 2 tablas y del resultado del select hacer un update. Si es asi...en realidad es un update de un select....

Buscando en google: "combinar select update" encontre esto:
Citar
Muy a menudo tenemos la necesidad de actualizar ciertos campos que requieren de una consulta previa, para estos casos podemos realizar todo en una misma sentencia.

update <nombre tabla>
set columna1=valor1, columna1=valor2, ..
where columna3=(select ...);

Update empleado set salario=salario/2, comision=0 where departamento=(select departamento from empleado group by departamento having count(*)=(select max(count(*)) from empleado group by departamento));

Espero que esto te ayude, un saludo.