Introduction aux clauses Oracle

Les clauses dans oracle sont comme des mots-clés qui utilisent à des fins spécifiques ou qui spécifient la signification spéciale. Certaines clauses d'Oracle sont obligatoires et certaines clauses sont facultatives.

La liste de la clause qui est présente dans Oracle est donnée ci-dessous -

  • Clause FROM: il s'agit d'une partie obligatoire dans une clause SelectThe FROM spécifie le nom d'une table à partir de laquelle les données doivent être accessibles.
  • Clause CONSTRAINT: il s'agit d'une clause facultative d'une instruction CREATE TABLE. Une clause CONSTRAINT définit une règle qui doit être satisfaite lors de l'insertion des données.
  • Clause WHERE: il s'agit d'une clause facultative d'une instruction Select ou d'une instruction update ou d'une instruction DELETE. La clause WHERE spécifie les lignes à sélectionner en fonction d'une condition.
  • Clause ORDER BY: il s'agit d'une clause facultative de l'instruction select ou d'une instruction CREATE VIEW ou d'une instruction INSERT. Une clause ORDER BY spécifie dans quel ordre les lignes de l'ensemble de résultats doivent apparaître.
  • FOR UPDATE Clause: il s'agit d'une clause facultative d'une instruction SELECT. Les curseurs sont par défaut en lecture seule. Le curseur doit être modifiable spécifie dans la clause FOR UPDATE, la clause FOR UPDATE applique une instruction check SELECT lors de la compilation pour remplir la condition pour qu'un curseur soit modifiable.
  • Clause GROUP BY: il s'agit d'une clause facultative d'une instruction Select, la clause GROUP BY sous-définit un résultat en groupes.
  • HAVING Clause: Il s'agit d'une clause facultative d'une instruction select. La clause HAVING restreint la sélection de groupe qui sont les résultats d'une clause GROUP BY.
  • Décalage du résultat et extraction des premières clauses: la clause de décalage du résultat permet de sauter les N premières lignes et de sélectionner les lignes restantes comme ensemble de résultats. La première clause d'extraction est utilisée avec la clause de décalage de résultat pour limiter le nombre de lignes sélectionnées dans le jeu de résultats.
  • Clause USING: il s'agit d'une clause obligatoire dans l'opération de jointure . La clause USING indique l'égalité des colonnes à vérifier pour joindre les deux tables.
  • WHERE CURRENT OF Clause: Il s'agit d'une clause facultative dans une instruction delete ou UPDATE. La clause WHERE CURRENT OF spécifie l'emplacement qui supprime les curseurs pouvant être mis à jour ou les mises à jour.

Liste de la clause Oracle

Ensuite, comprenons chaque clause en détail -

1. Clause FROM

La clause FROM est une partie obligatoire d'une instruction Select. La clause FROM spécifie le nom des tables à partir desquelles les données ou les colonnes doivent être accessibles pour être utilisées dans des expressions sélectionnées.

Syntaxe de la clause FROM

FROM Table1 (, Table2 ) *

Exemples de requêtes

Select * from employee ;

Exemple de requête avec condition de clause where

select d.dep_id
from department as d
where dep_id< 10

Exemple de requête avec une clause order by

select st .tablename, sc .isindex
from sys.systables st, sys.sysconglomerates sc
where st.tableid = sc.tableid
order by tablename, isindex

Exemple de requête avec une condition de jointure

select *
from flights f, flightavailability fa
where fa.flight_id = f.flight_id
and fa.segment_number = f.segment_number
and f.flight_id < 115

2. Clause de Contrainte

La clause CONSTRAINT est une clause facultative d'une instruction CREATE TABLE. Une clause CONSTRAINT définit une règle qui doit être satisfaite lors de l'insertion des données.

Les CONTRAINTES sont différentes à un niveau différent, comme indiqué ci-dessous -

1. Colonne - contrainte de niveau

Les contraintes au niveau des colonnes appliquent la règle à une seule colonne du tableau. Les contraintes au niveau de la colonne sont données ci-dessous -

  • NOT NULL: il spécifie que la colonne ne peut pas stocker de valeurs NULL.
  • CLÉ PRIMAIRE: Elle spécifie que les valeurs de colonne doivent être uniques, lesquelles peuvent être utilisées plus loin pour identifier une ligne dans la table. La PRIMARY KEY spécifie implicitement NOT NULL.
  • UNIQUE: il spécifie que les valeurs des colonnes doivent être uniques.
  • FOREIGN KEY: il spécifie que les valeurs des colonnes doivent être référencées comme clé primaire.
  • CHECK: Il spécifie des règles pour les valeurs de colonne.
2. Contrainte au niveau de la table

Les contraintes au niveau de la table appliquent la règle à une ou plusieurs colonnes de la table. Les contraintes au niveau de la table sont les mêmes que la contrainte au niveau de la colonne, mais la différence est l'endroit où la contrainte est spécifiée.

Exemples de requêtes

Exemple de contrainte de clé primaire au niveau de la colonne nommée did_pk -

create table department
(
Deptid number constraint did_pk primary key,
Dname char(10),
Location char(80) not null,
) ;

Exemple de contrainte de clé primaire au niveau de la table nommée did_pk

create table department
(
Deptid number constraint did_pk primary key,
Dname char(10),
Location char(80) not null,
primary key (Deptid)
);

3. OERE la clause

Il s'agit d'une clause facultative d'une instruction Select ou d'une instruction update ou d'une instruction DELETE. La clause WHERE spécifie les lignes à sélectionner en fonction d'une condition. Seules ces lignes renvoient ou suppriment ou mettent à jour où la condition ou l'expression est évaluée à VRAI.

Syntaxe de la clause Where

WHERE Booleanexpression

Exemple

Exemple de clause Where

select *
from flight
where business_taken_seats is null
or business_taken_seats = 0

Exemple de clause Where pour joindre plusieurs tables

select a.*, last name
from emp_act as a, employee as e
where a.empno = e.empno ;

4. COMMANDE PAR Clause

Une clause ORDER BY est une clause facultative de l'instruction SELECT ou d'une instruction CREATE VIEW ou INSERT ou d'une sous-requête scalaire ou d'une sous-requête de table. La clause spécifie l'ordre dans lequel les lignes de l'ensemble de résultats doivent apparaître.

Syntaxe de la clause ORDER BY

ORDER BY ( columnName | Expression | ColumnPosition )
( ASC (default) | DESC ) ;

Le nom de colonne fait référence aux noms de colonne selon lesquels le jeu de résultats est ordonné. ColumnPosition est un entier qui spécifie la position de la colonne dans les éléments Select dans la requête de l'instruction SELECT. L'expression est des expressions numériques, datetime et chaîne. L'ASC spécifie l'ordre croissant. Le DES spécifie l'ordre décroissant.

Trier par exemple avec un nom de corrélation

Dans l'instruction select ci-dessous, la colonne location a le nom de corrélation country qui est utilisé dans la clause order by -

Select name, location as country
From employee
Order by country

Trier par l'exemple avec une expression numérique

Dans l'instruction select ci-dessous, la clause order by utilise l'expression salaire + randonnée -

Select name, salary, hike from emp
Order by salary + hike

Trier par exemple avec une fonction

Dans l'instruction select ci-dessous, la fonction order by clause utilise pour spécifier la position -

Select a, len from calculation
Order by sin(a)

Ordonner par exemple en spécifiant avec un ordre nul

Vous pouvez spécifier la position des valeurs nulles à l'aide de la spécification d'ordre nul:

Select * from table1 order by column1 asc nulls last

5. Clause de mise à jour

La clause FOR UPDATE applique une instruction check SELECT lors de la compilation pour remplir la condition de mise à jour d'un curseur.

Syntaxe de la clause FOR UPDATE

FOR
(
FETCH ONLY | READ ONLY | UPDATE ( OF columnName (, columnName)* ) )

Le nom de colonne spécifie dans la clause FROM de la requête.

Exemple de clause FOR UPDATE

select eid, name, salary, deptid from emphist for update

6. Clause GROUP BY

Cette clause renvoie un sous-ensemble de résultats de groupes.

Syntaxe de la clause GROUP BY

GROUP BY
(
columnName (, columnName )*
|ROLLUP ( column-Name (, column-Name )* )
)

Exemples

Trouvez le salaire moyen d'un employé regroupé par deptid

select avg (salary), deptid
from employee
group by deptid ;

select max (salary), deptid
from employee
group by deptid ;

7. AYANT une clause

La clause HAVING restreint la sélection de groupe définie par la clause GROUP BY.

Syntaxe de la clause HAVING

HAVING Condition

Exemple de clause HAVING restreint la sélection de groupe pour moy (salaire) -

select avg (salary), deptid
from employee
group by deptid having avg(salary) > 50000;

La requête ci-dessous est illégale car la colonne deptid n'est pas une colonne de regroupement -

select avg (salary), deptid
from employee
group by deptid having deptid > 5;

Le résultat offset et fetch premières clauses

Les clauses de décalage et d'extraction de résultat utilisées pour ignorer les N premières lignes et l'extraction de première clause pour limiter le nombre de lignes sélectionnées dans le jeu de résultats.

Syntaxe de The result offset et fetch first clauses -

OFFSET ( integer ) (ROW | ROWS)
FETCH ( FIRST | NEXT ) ( integer ) (ROW | ROWS) ONLY

Exemples

Récupère la première ligne de T

Select * from employee fetch the first row only

8. Utilisation de la clause

La clause using utilise pour joindre les deux tables en fonction de la condition.

Syntaxe de l'utilisation de la clause

Using ( columnname (, columnname )* )

Exemples

Dans l'exemple, la table des pays et la table des villes se rejoignent à condition que cities.country soit égal aux pays. pays -

Select * from employee join department
using (eid)

9. OERE ACTUELLEMENT DE LA CLAUSE

La clause WHERE CURRENT OF spécifie l'emplacement qui supprime les curseurs pouvant être mis à jour ou les mises à jour.

La syntaxe de la clause WHERE CURRENT OF

WHERE CURRENT OF cursorName

Exemple

Statement stmt = conn.createStatement();
stmt.setCursorName("employeeres");
ResultSet res = conn.executeQuery(
"SELECT ename, salary FROM employee FOR UPDATE OF salary");
Statement stmt1 = conn.createStatement();
stmt1.executeUpdate("UPDATE employee SET salary = salary +10000 WHERE CURRENT
OF employeeres");

Articles recommandés

Ceci est un guide des clauses Oracle. Nous discutons ici de la clause List of Oracles avec les exemples et la syntaxe avec les résultats respectifs. Les clauses dans oracle sont des mots-clés qui utilisent dans le but spécifique ou qui spécifient la signification spéciale. Vous pouvez également parcourir nos autres articles suggérés pour en savoir plus -

  1. Oracle Warehouse Builder
  2. Qu'est-ce que la base de données Oracle
  3. Carrière chez Oracle
  4. Carrière d'administrateur de base de données Oracle

Catégorie: