Ich habe zwei Tabellen und ich verwende eine einfache Join-Bedingung zwischen ihnen.Wie aktualisiert man eine Spalte mit einem anderen Wert mit einer einfachen Join-Anweisung?
Ich muss die gemeinsamen Werte finden und die String (Erfolg) in die Spalte aktualisiert.
input_table1:
ID || Name || output
1 || ABS || Null
2 || ADF || NULL
3 || AQS || Null
4 || ATF || NULL
5 || APS || Null
6 || AMF || NULL
Input_table2:
ID || Name
1 || ABS
2 || ADF
6 || AMF
output_table: Dies ist die Ausgabe ich brauche.
ID || Name || output
1 || ABS || Success
2 || ADF || Success
3 || AQS || Null
4 || ATF || NULL
5 || APS || Null
6 || AMF || Success.
Dies ist die Abfrage ich benutze, und dies ist der Fehler Ein Ausdruck von Nicht-Typ boolean in einem Kontext angegeben empfängt, wo eine Bedingung zu erwarten ist, in der Nähe von ‚Then‘.
update .[dbo].[InputTable1]
set Output=
case when (
select INT.ID
from [dbo].[input_table1] INT
join [dbo].[input_table2] SHB
on INT.ID=SHB.ID
) Then 'Success' Else Null End
Gute Frage aktualisiert werden, auch Versuchen Sie, Beispiel-DML zu erstellen, DDL wie unten vorwärts gehen. 'create table # t1 ( id int, namee char (4), outp char (4) ) INSERT INTO # t1 1 auswählen, 'ABS', Null union all 2 auswählen, 'ADF' NULL \t Union all' – TheGameiswar