On 04/21/10 12:20 AM, David Van Couvering wrote:
> I have two tables with columns a,b that together comprise the primary
> key.
>
> In Oracle I can do something like DELETE FROM FOO WHERE  (a, b) IN
> (SELECT a, b FROM BAR WHERE MODIFIED = 1)
>
> but in Derby this gives me a syntax error saying Error: Syntax error:
> Encountered "," at line 1, column XX.  
>
> The documentation for "IN" also suggests that the subquery can only
> return a single column.
>
> How would I do this, when my tables have a multi-column primary key
> like above?
>

Hi David,

Would this work?

DELETE FROM FOO WHERE EXISTS
    (SELECT * FROM BAR WHERE MODIFIED = 1
        AND BAR.A = FOO.A AND BAR.B = FOO.B)


-- 
Knut Anders

Reply via email to