读起来不是很理解,验证后是这样的
我的理解是,在通过内链接查询到一条记录后,如果不符合LEFT JOIN ON condition(条件)直接过滤,当正好有一条记录符合了这条记录,然后在走where后面的条件,这么写:where col_name IS NULL,在这里就会就会停止查找,正好是在第一条满足LEFT JOIN ON condition(条件)条件的记录时停止了。原因是,该字段定义为NOT NULL,表中这个字段肯定不会有NULL值,但是where条件里却要去查该字段为NULL时候的值,查找和定义冲突了。
我的理解是,在通过内链接查询到一条记录后,如果不符合LEFT JOIN ON condition(条件)直接过滤,当正好有一条记录符合了这条记录,然后在走where后面的条件,这么写:where col_name IS NULL,在这里就会就会停止查找,正好是在第一条满足LEFT JOIN ON condition(条件)条件的记录时停止了。原因是,该字段定义为NOT NULL,表中这个字段肯定不会有NULL值,但是where条件里却要去查该字段为NULL时候的值,查找和定义冲突了。
2015-05-01