Теория для лабораторной работы №3 - "Запросы и основы использования SQL*PLUS", страница 14

 

Пример. Использование двойного амперсанда

Для расширения командного файла STATS используя двойные амперсанды, затем выполнения файла сначала нужно подавит вывод строки после подстановки:

 

SQL> SET VERIFY OFF

 

Теперь, нужно получить и отредактировать STATS введя следующие команды:

 

SQL> GET STATS

  1  SELECT &GROUP_COL,

  2         MAX(&NUMBER_COL) MAXIMUM

  3  FROM   &TABLE

  4  GROUP BY &GROUP_COL

SQL> 2

  2*  MAX(&NUMBER_COL) MAXIMUM

SQL> APPEND ,

  2*  MAX(&NUMBER_COL) MAXIMUM,

SQL> C /&/&&

  2*  MAX(&&NUMBER_COL) MAXIMUM,

SQL> I

  3i  MIN(&&NUMBER_COL) MINIMUM,

  4i  SUM(&&NUMBER_COL) TOTAL,

  5i  AVG(&&NUMBER_COL) AVERAGE

  6i

SQL> 1

  1* SELECT &GROUP_COL,

SQL> C /&/&&

  1* SELECT &&GROUP_COL,

SQL> 7

  7*  GROUP BY &GROUP_COL

SQL> C /&/&&

  7*  GROUP BY &&GROUP_COL

SQL> SAVE STATS2

created file STATS2

 

Наконец, нужно запустить командный файл STATS2  и ответить на запросы следующим образом:

 

SQL> START STATS2

Enter value for group_col: JOB

Enter value for number_col: SAL

Enter value for table: EMP

 

SQL*Plus покажет следующее:

 

JOB           MAXIMUM    MINIMUM      TOTAL    AVERAGE

----------            ----------          ----------     ----------           ---------

ANALYST           3000               3000           6000               3000

CLERK                 1300                800            4150           1037.5

MANAGER          2975              2450            8275           2758.3