2012-10-30 74 views
1

是否有可能VARCHAR列的值設置爲一個字符串的串聯和結果集迭代。是否可以將列值設置爲字符串和迭代值的串聯?

例如:

update TB_USER set LOGIN_NAME = 'BOB'+index where LOGIN_NAME = 'BOB' 

結果如下:

LOGIN_NAME

BOB0

BOB1

BOB2

+0

你期待這是一個存儲過程裏面呢? –

+0

沒有,我只是試圖執行一個簡單的查詢,更新一些值不能因爲限制被刪除 – Xerxes

+0

是,除了'index'是一個保留字。 – Kermit

回答

5
update T 
SET LOGIN_NAME = LOGIN_NAME + CAST(rn AS varchar(10)) 
FROM 
    (SELECT 
     LOGIN_NAME, 
     ROW_NUMBER() OVER (ORDER BY something /*or (SELECT 1)/*) as rn 
    FROM 
     TB_USER 
    WHERE 
     LOGIN_NAME = 'Bob' 
    ) T 
相關問題