1

myfield に次のようなデータがあります。

UNDC, UNKN
UNDC, MUA
UNKN, BUS

コンマの後にテキストのみを残して myfield を更新したいと思います。

right と charindex の組み合わせを使用してきましたが、update ステートメントを実行するとすべてが消去されます。これは私が今持っているものです:

update mytable
set myfield = RIGHT(myfield, charindex(',', myfield)-1)
where myfield like 'un%' and myfield like '%,%'

誰かが私がここで間違っていることを教えてもらえますか?

4

1 に答える 1

2

RIGHT()文字列の末尾から文字を数えています。CHARINDEX()その関数は最初から数えた位置を返すため、これは返されるものとは関係ありません。

次を使用して、必要なことを実行できますsubstring()

update mytable
    set myfield = substring(myfield, charindex(',', myfield) + 1, length(myfield))
    where myfield like 'un%,%' ;

where句の 2 つの条件を 1 つの条件に結合したことに注意してください。

于 2015-01-27T23:44:52.253 に答える