Snowpark Migration Accelerator : Clause Where¶
Description¶
Filtre les données renvoyées par une requête ou une sous-requête en fonction de conditions spécifiées.(Référence linguistique Databricks SQL WHERE)
La clause WHERE
filtre les données en définissant des conditions spécifiques qui doivent être remplies.(Référence linguistique Snowflake SQL WHERE)
Syntaxe¶
WHERE <boolean_expression>
...
WHERE <predicate>
[ ... ]
Modèles d’échantillons de sources¶
Données de configuration¶
Databricks¶
CREATE TABLE person (id INT, name STRING, age INT);
INSERT INTO person VALUES
(100, 'John', 30),
(200, 'Mary', NULL),
(300, 'Mike', 80),
(400, 'Dan' , 50);
Snowflake¶
CREATE TABLE person (id INT, name STRING, age INT);
INSERT INTO person VALUES
(100, 'John', 30),
(200, 'Mary', NULL),
(300, 'Mike', 80),
(400, 'Dan' , 50);
Code du modèle¶
Databricks¶
-- 1. Comparison operator in `WHERE` clause.
SELECT * FROM person WHERE id > 200 ORDER BY id;
-- 2. Comparison and logical operators in `WHERE` clause.
SELECT * FROM person WHERE id = 200 OR id = 300 ORDER BY id;
-- 3. IS NULL expression in `WHERE` clause.
SELECT * FROM person WHERE id > 300 OR age IS NULL ORDER BY id;
-- 4. Function expression in `WHERE` clause.
SELECT * FROM person WHERE length(name) > 3 ORDER BY id;
-- 5. `BETWEEN` expression in `WHERE` clause.
SELECT * FROM person WHERE id BETWEEN 200 AND 300 ORDER BY id;
-- 6. Scalar Subquery in `WHERE` clause.
SELECT * FROM person WHERE age > (SELECT avg(age) FROM person);
-- 7. Correlated Subquery in `WHERE` clause.
SELECT * FROM person AS parent
WHERE EXISTS (SELECT 1 FROM person AS child
WHERE parent.id = child.id
AND child.age IS NULL);
Utilisez les opérateurs de comparaison (tels que =, >, <, >=, <=) dans la clause
WHERE
pour filtrer les données.
ID |
NAME |
AGE |
---|---|---|
300 |
Mike |
80 |
400 |
Dan |
50 |
Utilisez les opérateurs de comparaison (=, <, >, <=, >=, !=) et les opérateurs logiques (AND, OR, NOT) dans la clause
WHERE
pour filtrer les données.
ID |
NAME |
AGE |
---|---|---|
200 |
Mary |
null |
300 |
Mike |
80 |
Utilisation de
IS NULL
dans la clauseWHERE
pour vérifier la présence de valeurs nulles.
ID |
NAME |
AGE |
---|---|---|
200 |
Mary |
null |
400 |
Dan |
50 |
Utilisation d’expressions de fonctions dans une clause
WHERE
.
ID |
NAME |
AGE |
---|---|---|
100 |
John |
30 |
200 |
Mary |
null |
300 |
Mike |
80 |
Utilisation de l’opérateur
BETWEEN
dans une clauseWHERE
pour filtrer les données sur la base d’une plage de valeurs.
ID |
NAME |
AGE |
---|---|---|
200 |
Mary |
null |
300 |
Mike |
80 |
Utilisation d’une sous-requête scalaire dans une clause
WHERE
.
ID |
NAME |
AGE |
---|---|---|
300 |
Mike |
80 |
Une sous-requête dans la clause
WHERE
qui fait référence aux colonnes de la requête externe.
ID |
NAME |
AGE |
---|---|---|
200 |
Mary |
null |
Snowflake¶
-- 1. Comparison operator in `WHERE` clause.
SELECT * FROM person WHERE id > 200 ORDER BY id;
-- 2. Comparison and logical operators in `WHERE` clause.
SELECT * FROM person WHERE id = 200 OR id = 300 ORDER BY id;
-- 3. IS NULL expression in `WHERE` clause.
SELECT * FROM person WHERE id > 300 OR age IS NULL ORDER BY id;
-- 4. Function expression in `WHERE` clause.
SELECT * FROM person WHERE length(name) > 3 ORDER BY id;
-- 5. `BETWEEN` expression in `WHERE` clause.
SELECT * FROM person WHERE id BETWEEN 200 AND 300 ORDER BY id;
-- 6. Scalar Subquery in `WHERE` clause.
SELECT * FROM person WHERE age > (SELECT avg(age) FROM person);
-- 7. Correlated Subquery in `WHERE` clause.
SELECT * FROM person AS parent
WHERE EXISTS (SELECT 1 FROM person AS child
WHERE parent.id = child.id
AND child.age IS NULL);
Utilisez les opérateurs de comparaison (tels que =, >, <, >=, <=) dans la clause
WHERE
pour filtrer les données.
ID |
NAME |
AGE |
---|---|---|
300 |
Mike |
80 |
400 |
Dan |
50 |
Utilisation d’opérateurs de comparaison (tels que =, <, >, <=, >=) et d’opérateurs logiques (tels que AND, OR, NOT) dans la clause
WHERE
pour filtrer les données.
ID |
NAME |
AGE |
---|---|---|
200 |
Mary |
null |
300 |
Mike |
80 |
Utilisation de
IS NULL
dans la clauseWHERE
pour vérifier la présence de valeurs nulles.
ID |
NAME |
AGE |
---|---|---|
200 |
Mary |
null |
400 |
Dan |
50 |
Utilisation d’expressions de fonctions dans une clause
WHERE
.
ID |
NAME |
AGE |
---|---|---|
100 |
John |
30 |
200 |
Mary |
null |
300 |
Mike |
80 |
Utilisation de l’opérateur
BETWEEN
dans une clauseWHERE
pour filtrer les données sur la base d’une plage de valeurs.
ID |
NAME |
AGE |
---|---|---|
200 |
Mary |
null |
300 |
Mike |
80 |
Utilisation d’une sous-requête scalaire dans une clause
WHERE
.
ID |
NAME |
AGE |
---|---|---|
300 |
Mike |
80 |
Sous-requête corrélée dans la clause
WHERE
.
ID |
NAME |
AGE |
---|---|---|
200 |
Mary |
null |
Problèmes connus¶
Aucun problème n’a été trouvé