18

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

C:10
R:200
N/A
E:3
N/A
N:77

各行の最初の 2 文字を削除しようとしていて、行をスキップN/AしようとしSUBSTRINGています。

UPDATE d1
SET d1_val = SUBSTRING(d1_val, 1, LENGTH(d1_val)2)
4

4 に答える 4

37

試す

UPDATE d1
SET d1_val = SUBSTRING(d1_val, 3)
WHERE d1_val <> 'N/A'
于 2012-04-30T19:06:28.503 に答える
8

複数の実行に関するより安全なクエリは、次を使用していLIKE '_:%'ます:

UPDATE d1
SET d1_val = SUBSTRING(d1_val, 3)
WHERE d1_val LIKE '_:%'

C:10などのように見えるすべての行を変更しますが、前のクエリを実行した後は変更E:100しません。10100

( の前に常に 1 文字あると仮定し:ます。それ以上の場合は を使用しますLIKE '%:%')

于 2012-04-30T19:18:05.870 に答える