1

私はスクリプトを初めて使用するので、私に固執してください。テーブルの列の値を変換するスクリプトを作成しようとしています。現在、SQLManagementStudioを使用しています。

これが私がやろうとしていることです:

次の形式のアカウント番号の列があります。

R12345
M23456
T12345

最初の文字を一連の数字に変換してから、残りの数字を保持しようとしています。例えば:

R12345 to 10012345
M23456 to 20023456
T12345 to 30012345

悲しいことにこのスクリプトを実行するためのファイルが見つからないようですこれを行っている理由は、このテーブルと、これらの数値だけの形式の別のテーブルとの1対1の関係を作成するためです。この問題については、しばらくの間、このテーブルにレコードが多すぎて自分で実行できません。これをどのように行うべきかについて何か考えはありますか?使用すべき特定のDBMSまたはスクリプト言語はありますか?

4

1 に答える 1

3
UPDATE accounts_table
SET account_number=CONCAT(
  CASE 
    WHEN SUBSTR(account_number,1,1)='R' THEN '100'
    WHEN SUBSTR(account_number,1,1)='M' THEN '200'
    WHEN SUBSTR(account_number,1,1)='T' THEN '300'
  END,
  SUBSTR(account_number,2)
)
于 2012-06-11T12:36:58.083 に答える