MSSQL/SQLServer中UPDATE或INSERT依次遞增做假數據的實現

  • 在開發中,遇到一個做假數據的問題。需要在用戶表插入一百條左右的測試賬號。
  • 首先,用戶編號是通過GUID遍歷後加入時間戳等方式生成的唯一的十六位以上的字符串;然後手機號不能唯一,用作登錄時匹配。
  • T-SQL編寫思路就是,以一條克隆帳號爲例,截取用戶編碼前位數-3位的字符串+遞增數字。手機號亦然。
  • 下面以SQL SERVER數據庫的修改爲例,Insert思路是一樣的。
--設置一個遞增變量INT類型的i,初始值爲100,在每次操作後+1,實現遞增。
--使用到的聚合函數有LEFT([要截取的字符串],[從左到右要截取的位數])、LEN([字符串]):返回字符串長度、CONVERT([要轉換的類型],[要轉換的變量])。
--該語句是更新ID300-400的假數據的用戶編號和手機號。
declare @i int
set @i=100
UPDATE dbo.[User] SET @i=@i+1,SerialNumber=LEFT(SerialNumber,LEN(SerialNumber)-3)+convert(varchar,@i),
MobilePhone=LEFT(MobilePhone,LEN(MobilePhone)-3)+CONVERT(VARCHAR,@i) WHERE Id BETWEEN 300 AND 400
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章