SQL プロシジャ
UPDATE ステートメント
テーブルまたはビューの、既存の行の列の値を変更します。
| 制限事項: | UPDATEは、UPDATE処理をサポートしないエンジンによってアクセスされたテーブルには使用できません。 |
|---|---|
| 参照項目: | PROC SQLテーブルのデータの更新 |
構文
必須引数
table-name
PROC SQLテーブルを指定します。table-nameとしては、1レベルの名前、2レベルのlibref.tableの名前または単一引用符で囲まれた物理パス名が可能です。
sas/access-view
SAS/ACCESSビューを指定します。
proc-sql-view
PROC SQLビューを指定します。proc-sql-viewとしては、1レベルの名前、2レベルのlibref.viewの名前または単一引用符で囲まれた物理パス名が可能です。
alias
table-name、sas/access-viewまたはproc-sql-viewに別名を割り当てます。
column
table-name、sas/access-viewまたはproc-sql-viewの列を指定します。
sql-expression
詳細
ビューを使用して、テーブルの1つ以上の行を更新できますが、いくつかの制限があります。詳細については、PROC SQLビューとSAS/ACCESSビューの更新を参照してください。
- 変更対象外の列の値は、CASE式を使用する一部のクエリの場合を除いて、変更されません。CASE式の説明については、CASE 式を参照してください。
- 列の定義または属性を追加、削除または変更するには、ALTER TABLE ステートメントで説明されているALTER TABLEステートメントを使用します。
- SET句では、等号の左側の列参照を、等号の右側の式の一部に含めることができます。たとえば、次の式を使用して、従業員に1,000ドルの休日手当を支給できます。
set salary=salary + 1000 - WHERE句を省略すると、すべての行が更新されます。WHERE句を使用すると、その条件を満たす行のみが更新されます。
- インデックスに使用されている列を更新すると、新しい値にはその列に定義されたインデックスが継承されます。
最終更新: 2026年4月14日