Re: What's wrong with this query? - Mailing list pgsql-general
From | Mike Christensen |
---|---|
Subject | Re: What's wrong with this query? |
Date | |
Msg-id | 7aa638e00906211923h7f7b70b1p2eca16b3f7c39f5d@mail.gmail.com Whole thread Raw |
In response to | Re: What's wrong with this query? (Martin Gainty <mgainty@hotmail.com>) |
List | pgsql-general |
The table in question is a list of events associated with user actions. Users who are subscribed to another user's "channel" will see those events on the home page. The column in question is a "RecipientId" which only contains a link to a User Id if the action was performed on another user, otherwise the value is null. So to answer your question, yes the column has a FK but it can also be null depending on the type of action the row represents.
Mike
Mike
On Sun, Jun 21, 2009 at 7:03 PM, Martin Gainty <mgainty@hotmail.com> wrote:
hi mike-
is null uuid valid ?
my experience would suggest a uuid is a foreign key to some other entity
so any table containing object types (classes/structs) or table created from an object type
(class/struct) must have a not null uuid (other systems call it guid)
would require the uuid/guid to be not null otherwise the entity you would be pointing to
has been 'orphaned'
thanks,
Martin
______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
Date: Sun, 21 Jun 2009 18:43:42 -0700From: mike@kitchenpc.com
Subject: Re: [GENERAL] What's wrong with this query?
To: mgainty@hotmail.com
CC: spam_eater@gmx.net; pgsql-general@postgresql.org
Thanks all, that's pretty much what I figured - just wanted to make sure.. I'm still trying to master this SQL thing you speak of.On Sun, Jun 21, 2009 at 5:20 PM, Martin Gainty <mgainty@hotmail.com> wrote:testcase for a null uuid?
thanks,
Martin
______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
> To: pgsql-general@postgresql.org
> From: spam_eater@gmx.net
> Subject: Re: [GENERAL] What's wrong with this query?
> Date: Mon, 22 Jun 2009 00:37:41 +0200
>
> Mike Christensen wrote on 22.06.2009 00:10:
> > I just tracked down a bug in my software due to an "unexpected" behavior
> > in Postgres.. Can someone clarify why this doesn't work (I haven't
> > tried it on MSSQL or anything else, so I'm not sure if this is the
> > official SQL standard or anything)..
> >
> > CREATE TABLE test
> > (
> > value uuid
> > );
> >
> > INSERT INTO test VALUES ('00000000-0000-0000-0000-000000000000');
> > INSERT INTO test VALUES ('11111111-1111-1111-1111-111111111111');
> > INSERT INTO test VALUES (null);
> >
> > select * from test where value != '00000000-0000-0000-0000-000000000000';
> >
> > What I expect to get is two rows: the
> > '11111111-1111-1111-1111-111111111111' row and the null row, as both
> > those values are in fact not '00000000-0000-0000-0000-000000000000'.
> > However, I only get the first one.
> >
> That is standard behaviour.
> A comparison with a NULL value always returns false (and that is not a Postgres
> speciality).
>
> You need to use
>
> select *
> from test
> where value != '00000000-0000-0000-0000-000000000000'
> or value is null;
>
> Thomas
>
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
Insert movie times and more without leaving Hotmail®. See how.
Hotmail® has ever-growing storage! Don’t worry about storage limits. Check it out.
pgsql-general by date: