Im Grunde kann ich nicht verstehen, was diese Abfrage unten tut:Probleme zu verstehen, diese Abfrage
UPDATE @so_stockmove
SET @total_move_qty = total_move_qty = (
CASE WHEN @so_docdt_id <> so_docdt_id THEN 0
ELSE ISNULL(@total_move_qty, 0)
END
) + ISNULL(move_qty,0),
balance = so_qty - @total_move_qty,
@so_docdt_id = so_docdt_id
Ich kann nur vermuten, dass es jede Zeile für die Spalten aktualisiert total_move_qty
, balance
, so_docdt_id
.
Kann mir jemand im Detail erklären, was die Abfrage bedeutet:
UPDATE tbl SET @variable1 = columnA = expression
Dies wird als ** skurriles Update ** bezeichnet. Dies funktioniert nicht garantiert, und ich werde diese Methode niemals in der Produktion verwenden. –
Dies ist eine schreckliche Art der Codierung SQL –