2011-07-03 30 views
1

これにはさまざまなオプションが試され、ロードブロックだけが実行されています。別のテーブルの値に基づいて値を更新してください

私は2つのテーブルを持っています。 customefieldvalueテーブルでstringvalueが 'Minor'になるたびに、issueテーブルの優先度を4に更新します。

+2

2つのテーブルは互いにどのようにリンク/関連していますか? WHERE句にはこのような条件はありません。 –

+0

どのようなエラーが発生しますか? – Flimzy

+0

私はそこの値を忘れました。 – shinyidol

答えて

2

テーブルが何らかの方法で関連していると仮定します(IssueIdフィールドを参照してください)。おそらく、また、あなたが持つ任意のカスタムフィールドよりも後にむしろあるただ一つであることがカスタムフィールドを絞り込むことがネストされたクエリのWHERE句の条件をしたい

UPDATE issue 
SET priority = '4' 
WHERE IssueId IN (SELECT IssueId FROM customfieldvalue WHERE stringvalue = 'Minor') 

:だから、このような何かを行うことができます値が「マイナー」、のように:あなたはこのすべての時間を実行しているしようとしている場合

WHERE customfieldname = 'PRIORITY' AND stringvalue = 'Minor' 

と、その後、あなたはすでにメインに正しい値を持っているものを除外しなければならないwhere句:

WHERE priority <> '4' AND IssueId IN (... 
+0

非常に良い答えです。 – hidden

+0

ありがとうございます。私はそれをあなたの提案と一緒に働かせました。 – shinyidol

関連する問題