sqloracle-databasesql-updateora-00933

Update SQL with two tables in Oracle


I have a sql like this

UPDATE A
SET A.TEMSILCI_KOD = 4
FROM S_MUSTERI A, S_TEKLIF B
WHERE A.TEMSILCI_KOD = 9
AND B.BAYI_KOD = 17
AND A.HESAP_NO = B.HESAP_NO

But i getting an error like this

Error starting at line 8 in command:
UPDATE A
SET A.TEMSILCI_KOD = 4
FROM S_MUSTERI A, S_TEKLIF B
WHERE A.TEMSILCI_KOD = 9
AND B.BAYI_KOD = 17
AND A.HESAP_NO = B.HESAP_NO
Error at Command Line:9 Column:22
Error report:
SQL Error: ORA-00933: SQL command not properly ended
00933. 00000 -  "SQL command not properly ended"
*Cause:    
*Action:

Where is the ERROR?


Solution

  • Maybe something like

    UPDATE S_MUSTERI
    SET TEMSILCI_KOD = 4
    WHERE TEMSILCI_KOD = 9
    AND EXISTS (SELECT 1 FROM S_TEKLIF B
    WHERE S_MUSTERI.HESAP_NO = B.HESAP_NO
    AND B.BAYI_KOD = 17)