Comment interroger, extraire des enregistrements d’une table avec l'ordre SELECT ?.
Nous allons voir très rapidement des instructions SELECT basiques.
• SELECT permet d’extraire une ou plusieurs colonnes.
• FROM permet de préciser le ou les tables ou sont stockées les valeurs.
• WHERE permet de restreindre la recherche avec des conditions et restrictions.
SELECT
[ { { DISTINCT | UNIQUE } | ALL } ]
[ schema. ]
{ table | view | materialized view } .* | column | expr [ [ AS ] c_alias ]
FROM { table1 [, table2 ]...}
[ WHERE conditions ]
|
SQL> COLUMN empno FORMAT 9999
SQL> COLUMN ename FORMAT A7
SQL> COLUMN mgr FORMAT 9999
SQL> COLUMN sal FORMAT 9999
SQL> COLUMN comm FORMAT 9999
SQL> SELECT * FROM emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ------- --------- ----- ---------- ----- ----- ----------
7369 SMITH CLERK 7902 17/12/1980 800 20
7499 ALLEN SALESMAN 7698 20/02/1981 1600 300 30
7521 WARD SALESMAN 7698 22/02/1981 1250 500 30
7566 JONES MANAGER 7839 02/04/1981 2975 20
7654 MARTIN SALESMAN 7698 28/09/1981 1250 1400 30
7698 BLAKE MANAGER 7839 01/05/1981 2850 30
7782 CLARK MANAGER 7839 09/06/1981 2450 10
7788 SCOTT ANALYST 7566 19/04/1987 3000 20
7839 KING PRESIDENT 17/11/1981 5000 10
7844 TURNER SALESMAN 7698 08/09/1981 1500 0 30
7876 ADAMS CLERK 7788 23/05/1987 1100 20
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ------- --------- ----- ---------- ----- ----- ----------
7900 JAMES CLERK 7698 03/12/1981 950 30
7902 FORD ANALYST 7566 03/12/1981 3000 20
7934 MILLER CLERK 7782 23/01/1982 1300 10
14 rows selected.
SQL>
|
SQL> SELECT * FROM emp WHERE deptno=20; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ----- ------- --------- ----- ---------- ----- ----- ---------- 7369 SMITH CLERK 7902 17/12/1980 800 20 7566 JONES MANAGER 7839 02/04/1981 2975 20 7788 SCOTT ANALYST 7566 19/04/1987 3000 20 7876 ADAMS CLERK 7788 23/05/1987 1100 20 7902 FORD ANALYST 7566 03/12/1981 3000 20 SQL> |
SQL> SELECT ename, job, sal FROM emp WHERE sal >= 2975; ENAME JOB SAL ------- --------- ----- JONES MANAGER 2975 SCOTT ANALYST 3000 KING PRESIDENT 5000 FORD ANALYST 3000 SQL> |
SQL> COLUMN "Concat Colonnes" FORMAT A55 SQL> SELECT ename 2 || ' fait parti du dept N ' 3 || deptno 4 || ', son salaire est de ' 5 || sal AS "Concat Colonnes", 6 job AS "Emploi" 7 FROM emp 8 WHERE sal >= 2975; Concat Colonnes Emploi ------------------------------------------------------- --------- JONES fait parti du dept N 20, son salaire est de 2975 MANAGER SCOTT fait parti du dept N 20, son salaire est de 3000 ANALYST KING fait parti du dept N 10, son salaire est de 5000 PRESIDENT FORD fait parti du dept N 20, son salaire est de 3000 ANALYST SQL> |
La table DUAL est une table utilisable par tous (en lecture seulement) et qui appartient à l’utilisateur SYS.
L’interrogation de DUAL est utile pour évaluer une expression.
SQL> SELECT (2000*(10-2.5)) AS "Resultat" FROM DUAL; Resultat ---------- 15000 SQL> SELECT sysdate AS "Ma date" FROM DUAL; Ma date ---------- 18/06/2011 SQL> |
| Liens en rapport avec l'article et qui sont susceptibles de vous intéresser |
|
• Update conditionnées de Tables avec MERGE INTO • Oracle SQL GROUP BY ROLLUP • Oracle SQL GROUP BY CUBE |