Re: NULLs: theoretical problems?

From: Hugo Kornelis <hugo_at_perFact.REMOVETHIS.info.INVALID>
Date: Sat, 11 Aug 2007 01:16:24 +0200
Message-ID: <uorpb3ll1g2tk9lhm7bm6itn36tlv12isu_at_4ax.com>


On Wed, 08 Aug 2007 23:16:15 GMT, paul c wrote:

(snip)
>I think I'm on the same page as you when you say on your blog something
>to the effect that the presence of a single null suggests at least two
>predicates or "sentences".

Hi Paul,

Hmmm, that's not EXACTLY what I'm saying, but it's pretty close.

Let me put it in another way. The presence of ANY value in a database, not just NULL, implies two facts. One is the recorded fact - eg an 'N' in the "HasKids" column implies that the respondent does not have kids. But there's another fact implied as well, one that is usually not recorded - to wit, the reason why there's an 'N' there. Was it entered by the interviewer after asking the interviewed person if she has kids? Did the interviewer check the interviewed's house for toys, just to be sure, or did he believe the answer? Was there an interviewer involved at all, or was this 'N' filled out in a web form? If so, could it be the case that the respondent thought entering 'N' meant "No, I don't want to share this information"? Or that her native tongue has a word starting with 'N' that means "Yes"? Heck, maybe she wanted to enter 'Nine' and never noticed that only a single character was accepted!

Okay, the last examples are a bit over the top, but I think you do get my point: for EVERY value in a database, you can ask the question what this actually means and why that value is there. We just don't usually do it - except when that value is not a value at all, but rather a symbol to denote the absence of a value.

If business needs say that the database should record if the value in the "HasKids" column is based on inspection of the population register, or just based on an answer to the relevant question, nobody would hesitate a second to add an extra column. So why do people get all confused when business needs that the database should record what the absence of such value is based on?

Best, Hugo Received on Sat Aug 11 2007 - 01:16:24 CEST

Original text of this message