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

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

Variant 181235586.


Your name*:


Question 1

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

  SELECT  a.lname, a.fname
    FROM  a JOIN b ON a.lname=b.lname
    WHERE b.sex = 'male'
Какой из следующих запросов ему эквивалентен?
  1.  
    SELECT a.lname, fname FROM a,b WHERE a.lname=b.lname AND sex='male'
  2.  
    SELECT a.lname, fname FROM a JOIN b WHERE b.sex='male'
  3.  
    SELECT lname, fname FROM a WHERE lname IN (SELECT lname FROM b)
  4.  
    SELECT a.lname, fname FROM a WHERE lname IN (SELECT lname FROM a JOIN b ON lname WHERE sex='male')
  5.  
    SELECT a.lname, fname FROM a

Question 2

Рассмотрим схемы следующих таблиц :

   Product:  name        idnumber  price  shipweight  bulklevel
   Sales:    customerid  idnumber  date   quantity    tax
   Customer: customerid  poc       phone  address     email

Какие колонки в таблице Sales нужно сделать внешними ключами (foreign keys):

  1.  idnumber
  2.  customerid, idnumber
  3.  idnumber, quantity
  4.  quantity
  5.  tax, quantity

Question 3

Для программного фрагмента

    p:=1; k:=0;
    while k<n do
    begin
        p:=2*p;
        k:=k+1;
    end;
какой инвариант будет выполнятся в цикле?
  1.  
  2.  
  3.  
  4.  
  5.  

Question 4

Представьте, что для увеличения производительности вы решили денормализовать схему вашей базы, и завести дополнительные стобцы, лишние, с точки зрения 3 нормальной формы. Какие, из перечисленных, механизмы СУБД нужно использовать, чтобы поддерживать в этих столцах актуальные значения?

  1.  хранимые процедуры
  2.  триггеры
  3.  представления (view)
  4.  ограничения (constraints)
  5.  курсоры

Question 5

Рассмотрим таблицу vtable:

   A   B   C
  -----------
   1   2   4
   2   1   6
   1   2   4
   1   1   20
   2   1   4
   12  0   9

Сколько строк вернет следующий SQL-оператор?

  SELECT DISTINCT a,b FROM vtable
  1.  5
  2.  6
  3.  2
  4.  1
  5.  4