IS DISTINCT FROM
DSQL, PSQL.
<operand1> IS [NOT] DISTINCT FROM <operand2>
Deux opérandes sont considérés comme DISTINCT (différents) s’ils ont des valeurs différentes, ou si l’un d’eux est NULL
et l’autre non.Elles sont considérées comme NOT DISTINCT (égales) si elles ont les mêmes valeurs ou si elles sont toutes deux NULL
.
L’option IS [NOT] DISTINCT FROM
renvoie toujours VRAI
ou FAUX
et jamais UNKNOWN
(NULL) (valeur inconnue). En revanche, les opérateurs “=
” et “<>
” renvoient UNKNOWN
(NULL) si l’un ou les deux opérandes sont NULL.
Caractéristiques de l’opérande |
Les résultats des différents opérateurs |
|||
---|---|---|---|---|
|
|
|
|
|
Mêmes valeurs |
|
|
|
|
Valeurs différentes |
|
|
|
|
les deux |
|
|
|
|
un |
|
|
|
|
IS [NOT] DISTINCT FROM
SELECT ID, NAME, TEACHER
FROM COURSES
WHERE START_DAY IS NOT DISTINCT FROM END_DAY
IF (NEW.JOB IS DISTINCT FROM OLD.JOB) THEN
POST_EVENT 'JOB_CHANGED';
[fblangref-commons-isnotboolean], [fblangref-commons-isnotnull].