1
我想更新列/表中的記錄。我想只在一列中使用SHUFFLE/SCRAMBLE。所有其他列將保持不變。僅在特定列內置亂數據,其他列不變
下面是一個例子
表名:Scrambtable
Title Firstname Lastname Telephone other columns...
1 Mr Adam Smith 001
2 Mrs Angela 002
3 Mr Bill Mowny 003
4 Miss Dame 004
5 Mr Boya Mala
我很感興趣,將其轉化爲按照下面
Title Firstname Lastname Telephone other columns...
1 Mr Adam Mala 001
2 Mrs Angela 002
3 Mr Bill 003
4 Miss Dame Smith 004
5 Mr Boya Towny
我試圖用腳本below..it似乎僅在姓氏列中刷新600個姓氏中的一個2姓氏。
update t1
set t1.lastname=b.lastname
from Scrambtable t1
cross apply
(select top 1 t2.lastname
from
Scrambtable t2
where
t1.lastname<>t2.lastname
order by newid()
)b
我得到錯誤語法錯誤';'附近。當我刪除;在WITH的開頭,我收到錯誤消息156,級別15,狀態1,行42 關鍵字'WITH'附近的語法不正確。 Msg 319,Level 15,State 1,Line 42 關鍵字'with'附近的語法不正確。如果此語句是公用表表達式,xmlnamespaces子句或變更跟蹤上下文子句,則前面的語句必須以分號結尾。 – optimisteve
@optimisteve我想我修復了語法錯誤,請再試一次。 –
再次感謝......剛剛執行了已更改的腳本..這次是錯誤消息208,級別16,狀態1,行61 無效的對象名稱'CTE'。 – optimisteve