2011-07-20 16 views
0

は私のテーブルです:MySqlで変数を宣言する方法は?ここ

ID名前私は(下の "安全な更新モード" に設定されている名前とMySQLを使用している場合は、アップル1

2ピーチ1

1カウントこのモードでは、テーブルをどこの単語で更新することはできません)。だから私は最初に名前でIDを取得し、次に行を更新する必要があります。

のSQLServerでは、私は以下のようにそれを行うことができます。

MySQLで
DELCARE @Id INT; 
SELECT @Id=(SELECT Id FROM MyTable WHERE Name='Apple') 

IF(@Id IS NOT NULL) 
BEGIN 
    UPDATE MyTable 
    SET Count=2 
    WHERE [email protected] 
END 

、私はどのように行うことができますか?

答えて

2

変数を宣言するにはsetキーワードを使用する必要がありますが、本当に必要はありません。

UPDATE MyTable 
    SET Count=2 
    WHERE ID IN (SELECT * FROM (SELECT ID FROM MyTable WHERE name = 'Apple') S) 

これは、世界で最も効率的ではありませんが、更新クエリは、それが更新されますテーブルに依存する場合には、回避策として機能します。

関連する問題