| From: | Lew <lew(at)nospam(dot)lewscanon(dot)com> |
|---|---|
| To: | pgsql-general(at)postgresql(dot)org |
| Subject: | Re: Delete with subquery deleting all records |
| Date: | 2007-06-02 15:24:07 |
| Message-ID: | tO2dnfd2A4wKFvzbnZ2dnUVZ_vamnZ2d@comcast.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Francisco Reyes wrote:
> Lew writes:
>
>> Strange? Why? Did you expect a particular statistical distribution?
>> Perhaps
>
>
> The impression was that one query was returning everything.. and the
> other only the records that did not exist in the one table.
>
>> you were surprised by the extent of the situation, not thinking there
>> could be 100 records that didn't match?
>
> Surprised that the outer join actually did ONLY display records that did
> not exist in the second table, even though I did not have a where clause
> to not list the records with a NULL value.
You only looked at some of the records, not all of them, correct?
Ah, yes, you did say,
> I checked a number of them.
Your evaluation of a whole data set by manual examination of a small subset of
the returned results cannot be certain.
Did you try SELECT COUNT(*) to check if the queries differed in the size of
their returned result sets?
> That is what I expected, BUT it only returned records that did NOT exist in the second table. It did not, as far as I could check, return all records.
You mean "as far as you did check". You still do not know the truth of your
assertion that the outer join returned only a subset of the records.
SELECT COUNT( DISTINCT export_messages.export_id )
FROM export_messages
LEFT OUTER JOIN exports ON (export_messages.export_id = exports.export_id);
vs.
SELECT COUNT( DISTINCT export_messages.export_id )
FROM export_messages;
will reveal.
--
Lew
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Michael Glaesemann | 2007-06-02 15:50:26 | Re: Transactional DDL |
| Previous Message | Jasbinder Singh Bali | 2007-06-02 15:12:44 | Re: Transactional DDL |