【发布时间】:2011-10-13 17:03:49
【问题描述】:
我正在处理两张表,一张表是 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 列,如果它为空。这意味着 29.90 应该保留,但其他应该更新。
我输入:
update part_order
set quotprice = (select part.unitprice
from part
where part.pnum = part_order.pnum
and quotprice is null);
除了切换值之外,它还可以工作。我的 29.90 变为 null,其他 3 个值被更新。如果我再次键入它,其他 3 个值将返回为 null,并且第二个值填充为 36.95。我想知道为什么它会更改值而不是只检查空值。
【问题讨论】: