Базовый Эрудит — questions

Jump to: navigation, search
12345
Знание базовых информационных технологий

Variant 2859058621.


Your name*:


Question 1

Рассмотрим SQL-запрос:

SELECT TYPE, avg(price), MIN(price)
FROM  product
GROUP BY category
Все ли слава богу с этим запросом?
  1.  Да, все в порядке
  2.  Нет, отсутствует WHERE-часть
  3.  Нельзя в SELECT-части заказывать несколько разных агрегатных функций
  4.  Колонку type надо занести в group by-часть
  5.  Нельзя в SELECT-части заказывать и колонки и агрегатные функции

Question 2

Пусть таблица vtable содержит (помимо прочих) следующие колонки:

   a        integer not null
   b        varchar(244) null

Что неправильно в следующем SQL-операторе:

  CREATE INDEX myindex ON vtable(a,b)
  1.  нельзя строить индексы над текстовыми полями
  2.  да все в порядке
  3.  индексируемые столбцы должны быть NOT NULL
  4.  каждый индекс строится только над одним полем
  5.  индексы не могут содержать одновременно поля символьных и числовых типов

Question 3

Про таблицу vtable известно, что в ней 100 записей, есть индекс по полю b, плюс все стобцы "non-unique". Сколько записей просканирует СУБД при выполнении следующего запроса:

  SELECT a, b, c, d FROM vtable WHERE a=5
  1.  100
  2.  0
  3.  1
  4.  5
  5.  от одной до 100 (точно не известно)

Question 4

Некий драйвер 32-х ленточного стриммера использует битовую строку для обозначения занятости/свободности соответствующей ленты. В некоторый момент времени строка равна D4FE2003 в шестнадцатиричном формате. Тогда процент занятых лент в этот момент ближе всего к

  1.  12%
  2.  38%
  3.  25%
  4.  62%
  5.  44%

Question 5

Приведенная C-программа

    #include <stdio.h>
    main()
    {
        float sum=0.0, j=1.0, i=2.0;
        while (i/j>0.001)
        {
            j=j+j;
            sum=sum+i/j;
            printf("%f \n",sum);
        }
    }
напечатает следующее количество строчек:
  1.  >39
  2.  10-19
  3.  20-29
  4.  30-39
  5.  0-9