Амалларни 2 синфга бўлиш мумкин:
1) Унар амаллар битта ҳад (операнд) устида бажарилади :
амал операнд
Бинар амаллар эса иккита ҳад устида бажарилади:
операнд1 амал операнд2
3.1. Амаллар бажариш тартиби
1) Унар арифметик амаллар ( + - ) ва PRIOR амали;
2) Арифметик амаллар ( * /);
3) Бинар арифметик амаллар ( + - ), белгили амал ;
4) Солиштириш амаллари ( барчаси );
5) NOT мантиқий амал ;
6) AND мантиқий амал;
7) OR мантиқий амал.
Мисол. 1 + 2 * 3. Бу ерда ORACLE аввал 2 ни 3 га кўпайтириб натижани 1га қўшади.
а) + , - унар амаллар :
SELECT * FROM orders
WHERE qtysold = -1 ;
SELECT * FROM emp
WHERE -sal <0
б) *, / - бинар амаллар:
UPDATE emp
SET sal = sal * 1.1
в) + - бинар амаллар :
SELECT sal + comm FROM emp
WHERE sysdate - hiredate > 365
3.3. Белгили амалларга мисол.
а) - Конкатенация амали
SELECT ‘ Name is ‘ename FROM emp
б) CREATE TABLE tab1 ( col1 VARCHAR2(6), col2 CHAR(6) ,
col3 VARCHAR2(6), col4 CHAR (6) )
INSERT INTO tab ( col1, col2, col3, col4, )
VALUES ( ‘ abc’ , ‘def ‘ , ‘ dnc ‘ , ‘ jkl ’ )
SELECT col1col2col3col4 “ Concatenation ” FROM tab1
Concatenation
-----------------------------------
absdef dhi jkl
3.4. Солиштириш амаллари.
а) = (тенглик) солиштириш амалига мисол:
SELECT * FROM emp
WHERE sal = 1500
б) != , ^= , = , <> (тенгсизлик) солишитириш амалларига мисол:
SELECT * FROM emp
WHERE sal != 1500
в) <, > (кичик, катта) солишитириш амалларига мисоллар:
SELECT * FROM emp
WHERE sal < 1500
SELECT * FROM emp
where SAL > 1500
г) >=, <= (катта ёки тенг, кичик ёки тенг) солишитириш амалларига мисоллар:
SELECT * FROM emp
WHERE sal >= 2500
SELECT * FROM emp
WHERE sal < = 2500
д) IN (тўпламнинг ихтиёрий элементига тенг) солишитириш амалига мисоллар:
SELECT * FROM emp
WHERE JOB IN ( ‘ CLERK ‘ , ‘ ANALUST ‘ )
SELECT * FROM emp
WHERE sal IN ( SELECT sal FROM emp WHERE deptno = 30 )
e) NOT IN (тўпламга тегишли эмас) солишитириш амалига мисоллар:
SELECT * FROM emp WHERE sal NOT IN ( SELECT sal
FROM emp WHERE deptuo = 30 )
SELECT * FROM emp
WHERE job NOT IN ( ‘ CLERK ‘ , ‘ ANALUST ‘)
ё) ANY, SOME (тўпламнинг ихтиёрий элементи) солишитириш амалига мисол:
SELECT * FROM emp WHERE sal = ANY
(SELECT sal FROM emp WHERE deptno = 30 )
ж) ALL (тўпламнинг барча элементи) солишитириш амалига мисол:
SELECT * FROM emp
WHERE sal > = ALL ( 1400, 3000 )
з) [ NOT ] BETWEEN x AND y (x ва y интервалида етиш [етмаслик]) солишитириш амалига мисол:
SELECT * FROM emp WHERE sal
BETWEEN 2000 AND 3000
k) EXISTS (мавжуд) солишитириш амалига мисол:
SELECT dname, deptno FROM dept
WHЕRE EXISTS ( SELECT * FROM emp
WHERE dept. Deptno = emp. Deptno )
л) x [ NOT ] LIKE y [ ESCAPE z ] (x ва y-қолип устма-уст тушиш [тушмаслик]) солишитириш амалига мисоллар. LIKE амали белгили қаторларни шаблон орқали солиштириш учун ишлатилади. Ушбу амал синтаксисининг диаграммаси қуйидагича:
LIKE condition : : =
Мисоллар:
SELECT sal FROM emp WHERE ename LIKE ‘SM%’
SELECT sal FROM emp WHERE ename LIKE ‘ MA% ‘
Ушбу шартни MARTIN, MA, MARK, MARY қаноатлантиради.
SELECT sal FROM emp WHERE ename LIKE ‘ SMITH ‘
Ушбу шартни SMITHE , SMITHY, SMITHS қаноатлантиради.
0>
Do'stlaringiz bilan baham: |