...seriously, this filters out a depressing number of people who put SQL on their resume and are applying for a SQL job.
Also, in real life, under normal working conditions, we live in the Age of Google (and books) -- if someone ever needed to know the definition, or recite a definition or comparison of those terms, he could just look it up. A better question would be: can they solve problems? And solve them in good ways? And have they in the past? Do they get shit done? Ship? Reliable? Work well with others (to the extend it would matter, because it varies)? Would it be a net win to them involved with your project/team/company? Those questions matter the most by far. And I don't think it's wise to assume they're going to be able to recite a definition of any particular term. Offhand. In a stressful and unnatural situation like an interview.
I would agree with you if the interview question was more specific, say about Oracle window functions for example.
An SQL developer not familiar with full joins would be similar to a Java developer who is not familiar with interfaces, or a Javascript developer who has never heard of closures. It's a significant part of the language, not a piece of arcane reference.
http://www.codinghorror.com/blog/2007/10/a-visual-explanatio...