1

変数の長さがテーブルを更新するかどうかを言いたいだけです。これは私が持っているものですが、クエリを作成する方法がわかりません。

if(@CName length > 0) then 
  update mytableset IDName= @CName where mytable.ID = @CID end if;
4

1 に答える 1

5

IF/ELSEロジックは必要ありませんWHERE。句で変数を使用できます。LENGTH()string 関数と booleanを使用しますAND

UPDATE mytable SET IDName = @CName WHERE LENGTH(@CName) > 0 AND mytable.ID = @CID

更新が行われるためには、両方の条件が真である必要がありますが、WHERE句の条件は必ずしもテーブルの列に適用される必要はありません。これらは、true または false に評価される任意の式にすることができます。

于 2012-12-09T20:23:59.850 に答える