我有一个带有列的表UserId
,Email
和Mobile
。Email
没有空值,但mobile
空值分散在表的不同行中。
我想mobile
用 unique更新每个 null 的第一行mobile
。我希望这会奏效,但不确定。
UPDATE userprofileplus
SET mobile = 9199225533
WHERE (UserId IN
(SELECT TOP (1) UserId
FROM userprofileplus AS userprofileplus_1
WHERE (mobile IS NULL) AND (UserId = 5)))
我的目的是防止用户在表上出现不必要的空值。我观察到的一个问题是 SQL Server Compact Edition不支持该TOP
关键字。我该如何解决?
SQL Server CE 版本是 4.0。我还注意到TOP
WebMatrix 完全支持关键字,但 VS 2010 SP1 拒绝TOP
SQL Server CE 4 上的关键字支持。这是怎么回事?在 webmatrix 中运行时,所有移动为空的记录都会更新,忽略 TOP 标准。我只需要更新第一个返回的行而不是全部。我也试过这个。相同的结果
UPDATE userprofileplus
SET mobile = 9199225533
WHERE (UserId IN
(SELECT UserId
FROM userprofileplus AS userprofileplus_1
WHERE (mobile IS NULL) AND (UserId = 5) order by userid offset 1 rows))
有人,请保释我。