SQL, обновляющий нулевые значения таблицы

Я работаю с двумя таблицами, первая таблица выглядит как part_order

ONum    PNum    NumOrdered  QuotPrice
2236    BZ66    1   
2236    AZ52    10          29.90
2237    CA14    3   
2240    CB03    1   

и вторая таблица является частью и выглядит так

PNum    Description OnHand  Warehouse   UnitPrice
AZ52    Skates          20  2           36.95
BZ66    Washer          5   1           465.50
CA14    Skillet         13  1           28.99
CB03    Bike            44  3           195.50

Я пытаюсь обновить столбец quotprice значениями unitprice, если он равен нулю. Это означает, что 29.90 должен остаться, но остальные должны быть обновлены.

Я ввожу:

 update part_order
    set quotprice = (select part.unitprice
    from part
    where part.pnum = part_order.pnum
    and quotprice is null);

И это работает помимо переключения значений. Мои 29,90 превращаются в нуль, а остальные 3 значения обновляются. Если я наберу его снова, остальные 3 значения вернутся к нулю, а второе значение будет заполнено 36,95. Мне интересно, почему он меняет значения, а не проверяет только нулевые значения.


person Tyler    schedule 13.10.2011    source источник


Ответы (1)


person    schedule
comment
Да, это сработало отлично :) Я ненавижу, как что-то настолько простое полностью ломает код, лол. Огромное спасибо за помощь. - person Tyler; 14.10.2011