如果索引所指向的在持续化存储中无法找到,那么这就是NULL。对于包含NULL的条件表达式,EJB QL沿用SQL92中的规定。简单地说,有如下规定:
1、如果一个比较或算术操作包含一个未知值,它产生一个NULL值。
2、如果一个路径表达式包含一个NULL值,它返回一个NULL值。
3、在进行IS NULL检验时,NULL持续化字段或NULLsingle-valued关联字段的结果为TRUE。反之,在进行IS NOT NULL检验时结果为FALSE。
4、布尔操作
等同性规定
在EJB QL中,只有同一类型的值可以进行比较。但是,这个规则有一个例外:精确型数值与近似型数值之间可以进行比较。在这样的比较中,所需的类型转换遵守Java的有关规定。
EJB QL对数值进行比较时,将它们视为Java类型,而不是它们在底层数据存储中的持续化类型。例如,如果一个持续化字段既可以是整型也可以是NULL,那么它必须定义为一个Integer对象,而不是一个int简单变量。只是因为只有Java对象才能为NULL,而一个简单变量不可以。
两个字符串只有在它们包含完全相等的字符序列时才被视为相等。这时你注意空格的存在变得很重要;例如,字符串'abc'和'abc '就是不相等的。
两个具有相同抽象模式类型的entity bean只有在它们的主键的值相同时才被视为相等。
SELECT子句
SELECT子句定义了查询返回的对象或值的类型。SELECT子句的语法如下:
|
文章来源于领测软件测试网 https://www.ltesting.net/