Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: delete with self join


  • From: garry saddington <garry(at)schoolteachers(dot)co(dot)uk>
  • To: pgsql-general(at)postgresql(dot)org
  • Cc: Richard Huxton <dev(at)archonet(dot)com>
  • Subject: Re: delete with self join
  • Date: Tue, 17 Apr 2007 10:07:14 +0100
  • Message-id: <1176800835(dot)7783(dot)17(dot)camel(at)localhost>

On Tue, 2007-04-17 at 09:21 +0100, Richard Huxton wrote:
> garry saddington wrote:
> > I am trying this syntax which is my interpretation of the docs:
> > 
> >      delete from siblings s1 using siblings s2
> >         WHERE  s1.principal = s2.principal
> >               and s1.sibling=175
> > 
> > Can anyone tell me where I am going wrong?
> 
> 1. What's happening - are you getting an error?
I am getting a syntax error (via psycopg) at or near s1 - perhaps this is a psycopg problem?
> 2. What is the query supposed to do? I can't see why you're not just doing:
> DELETE FROM siblings WHERE sibling=175;
> 

I am keeping a record of siblings in a school. The user chooses one
student and there siblings such that id's are entered into a table as
such:
TABLE SIBLINGS:

principal  sibling
  809         234
  809         785
  809         345
  809         809

809 is a sibling of all of them, but of course 234 is a sibling of 785.
To retrieve siblings I use this query:

      SELECT
students.studentid,students.firstname,students.surname,students.year,students.pastoralgroup,students.dob
        FROM   siblings c, siblings c2,students
        WHERE  c.principal = c2.principal
              and c.sibling=234 (this value is supplied in a variable)
and c2.sibling=students.studentid

What I am trying to do is to allow the user to correct input mistakes by
deleting all the siblings of one family at the same time by choosing
just one of the siblings. I hope this clears things up.
Regards
Garry




Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group