Въведение в клаузите на Oracle

Клаузите в oracle са като ключови думи, които се използват за конкретната цел или които уточняват специалното значение. Някои от клаузите в oracle са задължителни, а някои от клаузите са незадължителни.

Списъкът на клаузата, присъстваща в oracle, е даден по-долу -

  • ОТ клауза: Задължителна част в клауза SelectThe FROM определя името на таблица, от която данните трябва да бъдат достъпни.
  • Клауза CONSTRAINT: Това е незадължителна клауза на оператор CREATE TABLE. Клауза CONSTRAINT дефинира правило, което трябва да бъде изпълнено по време на вмъкване на данните.
  • КЪЛГА Клауза: Това е незадължителна клауза на оператор Select или актуализация или оператор DELETE. Клаузата WHERE определя кои редове да бъдат избрани въз основа на условие.
  • ПОРЪЧАЙТЕ С клауза: Това е незадължителна клауза на оператора select или CREATE VIEW или инструкция INSERT. Клауза ORDER BY указва в кой ред да се появят редовете от набор.
  • ЗА АКТУАЛИЗАЦИЯ Клауза: Това е незадължителна клауза на SELECT оператор. По подразбиране курсорите са само за четене. Курсорът трябва да бъде актуализиран, указан в клаузата FOR UPDATE, клаузата FOR UPDATE налага проверка SELECT по време на компилиране, за да отговаря на условието, че курсорът може да бъде актуализиран.
  • Клауза GROUP BY: Това е незадължителна клауза на оператор Select, клаузата GROUP BY подразбира резултата в групи.
  • HAVING клауза: Това е незадължителна клауза на оператор select. Клаузата HAVING ограничава избора на група, който е резултат от клауза GROUP BY.
  • Резултатът компенсира и извежда първите клаузи: Клаузата за компенсиране на резултата използва за пропускане на N първи редове и за избор на останалите редове като набор от резултати. Първата клауза за извличане използва заедно с клаузата за компенсиране на резултата, за да ограничи броя на редовете, избрани в набора от резултати.
  • УПОТРЕБА Клауза: Това е задължителна клауза в операцията за присъединяване . Клаузата USING показва кое равенство на колоните трябва да бъде проверено за присъединяване на двете таблици.
  • КЪДЕ ТОЧНОТО НА Клаузата: Това е незадължителна клауза в изтриване или UPDATE оператор. Клаузата WHERE CURRENT OF определя местоположението, което изтрива актуализираните курсори или актуализациите.

Списък на клаузата на Oracle

На следващо място, нека разберем подробно всяка клауза -

1. ОТ клауза

Клаузата FROM е задължителна част в оператор Select. Клаузата FROM указва името на таблиците, откъдето данните или колоните трябва да бъдат достъпни за използване в избрани изрази.

Синтаксис на клауза FROM

FROM Table1 (, Table2 ) *

Примери за заявки

Select * from employee ;

Пример за запитване с условие за клауза

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

Пример за запитване с поръчка по клауза

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

Пример за заявка със условие за присъединяване

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. ОГРАНИЧАВА клауза

Клаузата CONSTRAINT е незадължителна клауза на оператор CREATE TABLE. Клауза CONSTRAINT дефинира правило, което трябва да бъде изпълнено по време на вмъкване на данните.

КОНСТРАНЦИТЕ са различни на различно ниво, както е дадено по-долу -

1. Колона - ограничение на нивото

Ограниченията на ниво колона налагат правилото на една колона в таблицата. Ограниченията на нивото на колоната са дадени по-долу -

  • NOT NULL: Указва, че колоната не може да съхранява NULL стойности.
  • PRIMARY KEY: Посочва, че стойностите на колоните трябва да бъдат уникални, което по-нататък може да се използва за идентифициране на ред в таблицата. PRIMARY KEY неявно посочва NOT NULL.
  • УНИКАЛ: Указва, че стойностите на колоните трябва да бъдат уникални.
  • FOREIGN KEY: Указва, че стойностите на колоните трябва да се посочват като първичен ключ.
  • ПРОВЕРКА: Той определя правила за стойностите на колоната.
2. Ограничение на ниво таблица

Ограниченията на ниво таблица налагат правилото на една или повече колони в таблицата. Ограниченията на ниво таблица са същите като ограничението на ниво колона, но разликата е там, където ограничението е посочено.

Примери за заявки

Пример за ограничение на първичен ключ на ниво колона с име did_pk -

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

Пример за ограничение на първичен ключ на ниво таблица с име did_pk

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

3. КЪДЕ Клауза

Това е незадължителна клауза на оператор Select или оператор за актуализация или оператор DELETE. Клаузата WHERE определя кои редове да бъдат избрани въз основа на условие. Само тези редове се връщат или изтриват или актуализират, когато състоянието или изразът се оценяват на ИСТИНСКИ.

Синтаксис на клаузата Къде

WHERE Booleanexpression

пример

Пример за клауза

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

Пример за клауза за присъединяване към няколко таблици

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

4. ПОРЪЧАЙТЕ С клауза

Клауза ORDER BY е незадължителна клауза на оператора SELECT или CREATE VIEW или оператора INSERT или Scalar Subquery или Table Subquery. Клаузата указва реда, в който редовете от набор се показват.

Синтаксис на клаузата ORDER BY

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

Името на колона Отнася се до имената на колоните, по които резултатът е подреден. ColumnPosition е цяло число, което определя позицията на колоната в Select Items в заявката на оператора SELECT. Изразът е числови, дата и строкови изрази. ASC Посочва възходящ ред. DES указва низходящия ред.

Подредете чрез пример с име на корелация

В изявлението за избор по-долу колоната за местоположение има държавата на името на съответствието, която се използва в реда с клауза -

Select name, location as country
From employee
Order by country

Подредете чрез пример с числов израз

В долната декларация за избор подредете по клауза използвайте израз заплата + увеличение -

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

Подредете чрез пример с функция

В долното изречение за избор по-долу използвайте функцията за използване по клауза, за да зададете позицията

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

Подредете чрез пример, като посочите нулево подреждане

Можете да определите позицията на нулевите стойности, като използвате спецификацията за нулево подреждане:

Select * from table1 order by column1 asc nulls last

5. ЗА ЗАДЪЛЖИТЕЛНА клауза

Клаузата FOR UPDATE налага проверка SELECT по време на компилиране, за да отговаря на условието за преминаване на курсор.

Синтаксис на клауза FOR UPDATE

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

Името columnName посочва в клаузата FROM на заявката.

ЗА пример за актуализация на UPDATE

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

6. Клауза по клауза

Тази клауза връща резултат от подмножество от групи.

Синтаксис на клауза по клауза

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

Примери

Намерете средната заплата на служител, групирана по deptid

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

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

7. КЛАСУВАЩА клауза

Клаузата HAVING ограничава избора на група, дефиниран от клаузата GROUP BY.

Синтаксис на клаузата HAVING

HAVING Condition

Пример за клауза HAVING ограничава избора на група за средна стойност (заплата) -

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

По-долу зададената заявка е незаконна, тъй като дертираната колона не е колона за групиране -

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

Резултатът компенсира и извлича първите клаузи

Отместването на резултата и извличането на първите клаузи се използват за пропускане на N първи редове и извличане на първото използване на клауза, за да се ограничи броят редове, избрани в резултата.

Синтаксис на резултата компенсира и извлича първите клаузи -

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

Примери

Извадете първия ред на T

Select * from employee fetch the first row only

8. Използване на клауза

Използващата клауза използва за присъединяване на двете таблици въз основа на условието.

Синтаксис на използване на клауза

Using ( columnname (, columnname )* )

Примери

В примера таблицата на страните и таблицата с градовете се присъединяват при условие, че градове. страната е равна на страните. страна -

Select * from employee join department
using (eid)

9. КЪДЕ ТОКОВЕ НА Клауза

Клаузата WHERE CURRENT OF определя местоположението, което изтрива актуализираните курсори или актуализациите.

Синтаксисът на WHERE TURRENT OF на клаузата

WHERE CURRENT OF cursorName

пример

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");

Препоръчителни статии

Това е ръководство за клаузите на Oracle. Тук обсъждаме Клаузата за списък на Oracles с примерите и синтаксиса с респ. (Ефективни резултати. Клаузите в oracle са ключови думи, които се използват за конкретна цел или уточняват специалното значение. Можете също да прегледате и другите ни предложени статии, за да научите повече -

  1. Oracle склад строител
  2. Какво представлява Oracle Database
  3. Кариера в Oracle
  4. Кариера в администратор на база данни на Oracle

Категория: