2017-01-13 21 views
0

Wir haben zwei Tabellen dbo.MONITOR (Reg. Tabelle) & sum_file_folder (documentum Tabelle)Wie schreibe ich Inner Join Query in dqMan?

dbo.MONITOR

- FILE_ID 
- STATUS 

sum_file_folder

- object_name 
- file_status 

wo FILE_ID & Objekt_Name gleichen Felder in beide Tabellen.

So diese Inner Join-Abfragen funktionieren nicht ...

update dbo.MONITOR t1 objects set t1.STATUS = (select file_status from sum_file_folder t2 where t1.FILE_ID=t2.object_name) 

UPDATE t1 OBJECTS SET t1.STATUS = t2.file_status from sum_file_folder t1 INNER JOIN dbo.MONITOR t2 ON t1.object_name = t2.FILE_ID 
+0

schreibst du sql oder dql? – Miki

Antwort

0

sieht aus wie eine Syntax und Tabelle in der Abfrage alias Problem.

Können Sie versuchen, die Abfrage unter:

UPDATE t1 
SET STATUS = t2.file_status 
FROM dbo.MONITOR t1 
INNER JOIN dbo.sum_file_folder t2 ON t2.object_name = t1.FILE_ID 
0

können Sie diesen Code verwenden, den Status in der Tabelle zu aktualisieren.

UPDATE t1 
SET t1.STATUS = t2.file_status 
FROM dbo.MONITOR t1 
INNER JOIN sum_file_folder t2 where t1.FILE_ID=t2.object_name 
0

Wenn Sie Ihre eigenen Tabellen verwenden, können Sie ein Update direkt auf die Datenbank sicher tun - keine Notwendigkeit für DQL (sum_file_folder muss eine benutzerdefinierte Tabelle sein - ich habe nicht gesehen, dass vor). Wenn Sie mit DQL stecken bleiben, könnten Sie eine EXECUTE exec_sql MIT QUERY 'your-sql-update-statement' Nur vorsichtig sein - das ist automatisch festgeschrieben.