我有一個表格,其中列UserId
,Email
和Mobile
。 Email
沒有空值,但mobile
的空值分散在表中的不同行中。更新記錄的空列的第一行條目
我想更新每個空的第一行mobile
與唯一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。我還注意到,0123M關鍵字完全由WebMatrix支持,但VS 2010 SP1在SQL Server CE 4上拒絕TOP
關鍵字支持。這裏發生了什麼?當在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))
有人,請把我救了出來。
你可以告訴我們你當前行的例子和你想要的輸出嗎? –
其中之一,你需要'..哪裏的mobilenum IS NULL .....' - 它不會與'isnull'一起工作.... –
@marc_s,tnx ....我已經解決了上面的問題實際的代碼工作正常,除了TOP關鍵字,其中sql server CE標記爲不受支持的關鍵字。 –