Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 1 - ОБЗОР баз данных Oracle.doc
Скачиваний:
96
Добавлен:
15.05.2015
Размер:
921 Кб
Скачать
☆

Замена заголовков столбцов псевдонимами

Для каждого результирующего набора, возвращаемого Oracle в ответ на введенные команды SQL, Oracle создает заголовки для каждого столбца, чтобы вы знали, что за данные вы получили. По умолчанию Oracle воспроизводит имя столбца в точности так же, как оно было указано в операторе select, включая имена функций, если они имеются. К сожалению, этот метод часто дает плохое представление о том, что в действительности отражают хранящиеся в столбце данные. Oracle усекает выражения, чтобы уложиться в определенный размер, соответствующий типу данных возвращаемого столбца, что еще более усугубляет проблему. К счастью, для разрешения этой проблемы вы можете использовать во фразе column так называемые псевдонимы. При создании псевдонима столбца вы присваиваете ему другое имя, которое Oracle использует при отображении результатов выполнения оператора select. Такой режим дает вам возможность использовать в отведенном для столбца пространстве более осмысленные имена. Предлагаем пример:

SQL> select empno, ename, nvl(mgr,0) as mgr

2 from emp;

EMPNO ENAME MGR

7369 SMITH 7902

7499 ALLEN 7698

7521 WARD 7698

7566 JONES 7839

7654 MARTIN 7698

7698 BLAKE 7839

7782 CLARK 7839

7788 SCOTT 7566

7S39 KING 0

7844 TURNER 7698

7876 ADAMS 7788

7900 JAMES 7698

7902 FORD 7566

7934 MILLER 7782

Совет Можно опустить в псевдониме для столбца ключевое слово as и все равно получить практически тот же результат.

Псевдонимы столбцов полезны при добавлении в выходные данные запросов осмысленных заголовков. Псевдонимы можно определить двумя способами: либо указать имя псевдонима сразу после спецификации столбца во фразе column (отделив его пробелом), либо использовать для этой цели ключевое слово аз, чтобы более отчетливо подчеркнуть, что это именно псевдоним Ниже мы приводим общее правило записи псевдонимов (в обоих вариантах)

SQL> — SELECT имя_столбца__или_операции псевдоним, ... ;

SQL> SELECT nvl(mgr,0) MGR

2 FPROM EMP;

ИЛИ

SQL> — SELECT имя_столбца_или__операции AS псевдоним, ... ;

SQL> SELECT nvl(mgr,Q) AS MGR

2 FROM EMP;

Вам не требуется специфицировать функцию, для того чтобы использовать псевдоним. К примеру, если вы просто желаете заменить заголовок столбца для столбца MGR на что-нибудь более информативное, то для этой цели также можно воспользоваться псевдонимом столбца. Оператор SQL может выглядеть, например, следующим образом: select mgr as "Manarer Code" from emp.

Объединение столбцов с помощью конкатенации

Для того чтобы обеспечить более интересный или более удобочитаемый вид выходных данных, можно сцепить вместе несколько столбцов с данными. Такая операция называется конкатенацией. Для изображения операции конкатенации используются два соединенных вместе символа конвейера: ||. Кроме того, можно использовать оператор concat ( }, передавая в него имена двух сцепляемых столбцов. В следующем примере столбец ENAME конкатенируется с текстовым выражением и со столбцом JOB с использованием обоих допустимых методов, что позволяет получить более осмысленный результат:

>select ename | | ' , who is the ' | |

  1. concat(]ob, ' for the company’)

  2. as "Name and Role"

  3. from emp;

Name and Role

SMITH, who is the CLERK for he сompany

ALLEN, who is the SALESMAN for the company

WARD, who is the SALESMAN for the company

JONES, who is the MANAGER for the company

MARTIN, who is the SALESMAN for the company

BLAKE, who is the MANAGER for the company

CLARK, who is the MANAGER for the company

SCOTT, who is the ANALYST for the company

KING, who is the PRESIDENT for the company

TURNER, who 0.5 the SALESMAN for the company

ADAMS, who is the CLERK for the company

JAMES, who is the CLERK for the company

FORD, who is the ANALYST for the company

MILLER, who is the CLERK for the company

Совет Чтобы сделать выходные данные более осмысленными и читаемыми, используйте псевдонимы для именования конкатенированных вами столбцов.