picoSQL - Language reference manual


6) Search conditions


Search conditions are formed from one or more predicates, combined one another using the logical operators AND, OR and NOT. Conditions are used as to choose a subset of the rows from one or more tables. A search condition is evaluated any time a rows is read and the rows is returned if and only if the result of condition is TRUE.


NOTE: SQL standard use a three valued logic, so every condition evaluates as one of TRUE, FALSE or UNKNOWN. The truth tables of this kind of logic are the following:


AND

TRUE

FALSE

UNKN.

TRUE

TRUE

FALSE

UNKN.

FALSE

FALSE

FALSE

FALSE

UNKN.

UNKN.

FALSE

UNKN.


OR

TRUE

FALSO

UNKN.

TRUE

TRUE

TRUE

TRUE

FALSE

TRUE

FALSE

UNKN.

UNKN.

TRUE

UNKN.

UNKN.


NOT


TRUE

FALSE

FALSE

TRUE

UNKN.

UNKN.


picoSQL use a more simple boolean logic with only the TRUE and FALSE values. This behaviour implies only one difference between picoSQL and SQL standard: picoSQL evaluates TRUE an equality between two NULL values while standard SQL does not.


Two operands in a predicate must be of comparable types.


Index Previous Next