Hola, mucho gusto.
Tengo un inconveniente con un update.
Debo realizar una consulta, la cual me trae los parámetros con los que realizare los filtro, y el valor que voy a actualizar.
Al parecer tengo todo correctamente, ya que al realizar un SELECT * en ves del UPDATE me trae la cantidad de registro adecuada que serán modificados, (246).
pero a la hora de realizar el update se me afectan todos los registros, y solo con el primer valor de la consulta.
Aquí me sentencia:
Código:
UPDATE tabla_estrella SET stock = q3.stock
ROM tabla_estrella As te2 INNER JOIN
(
SELECT q2.account, q2.shopid, q2.itemid, q2.fechaMax, q1.stock
FROM
(
(SELECT accountid, shopid, itemid, stock FROM stockshop) As q1
INNER JOIN
(SELECT te1.account, te1.shopid, te1.itemid, max(te1.date) As fechaMax
FROM tabla_estrella As te1
GROUP BY te1.account, te1.itemid, te1.shopid
) As q2
ON (q1.accountid = q2.account AND q1.shopid = q2.shopid AND q1.itemid = q2.itemid))
) As q3
ON (te2.account = q3.account AND te2.shopid = q3.shopid AND te2.itemid = q3.itemid AND te2.date = q3.fechaMax)