7/28/2016

Оператор INSERT

Пример 1.1.
 INSERT INTO emp VALUES (101, 'Willson', 'Jack', null, null, null,  null, null, null, null, null);

 SELECT first_name, last_name FROM emp WHERE last_name LIKE  'Will%';

 FIRST_NAME                LAST_NAME
 ------------------------- -------------------------
 Jack                      Willson

7/25/2016

Подзапросы

Подзапросы, которые возвращают одну запись


Пример 1.
 SELECT first_name, last_name, salary
 FROM emp
 WHERE salary =
  (SELECT MIN(salary) FROM emp);

 FIRST_NAME                LAST_NAME                 SALARY
 ------------------------- ------------------------- ----------
 Chad                      Newman                    750

6/25/2016

UNION, UNION ALL, INTERSECT, MINUS

UNION, UNION ALL

Пример 1.
SELECT region_id, name
FROM dept
ORDER BY name;
SELECT id, name
FROM region;
REGION_ID  NAME
---------- ----------------------
1          Administration
1          Finance
1          Operations
2          Operations
5          Operations
4          Operations
3          Operations
1          Sales
2          Sales
3          Sales
4          Sales
5          Sales
ID         NAME
---------- ----------------------
1          North America
2          South America
3          Africa / Middle East
4          Asia
5          Europe

6/10/2016

Объединение таблиц

Cross Join


Оператор перекресного соединения (CROSS JOIN) соединяет две таблицы в одну. Порядок таблиц для оператора не важен поскольку оператор симетричен.

Оператор HAVING

Оператор HAVING указывает условие на результатах агрегатных функций. Оператор HAVING аналогичен оператору WHERE, но только для GROUP BY. По этому есть некая последовательность:

Оператор GROUP BY

Предложение GROUP BY - используется для группирование одного или несколько столбцов. К этим группам могут применятся агрегатные функции.

Значения NULL. Устранения дубликатов. Агрегатные функции

Значения NULL 

Значение NULL указывает на то, что ячейка не имеет никаких данных. Даже если в ячейке поставить только пробел, то эта ячейка уже не является значением NULL. Протестировать таблицу на нулевые значения, можно с помощью IS [NOT] NULL. Но не в коем случае так:

SELECT name FROM customer WHERE country = ''";