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

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

Variant 3482394300.


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
  2.  
    SELECT a.lname, fname FROM a WHERE lname IN (SELECT lname FROM a JOIN b ON lname WHERE sex='male')
  3.  
    SELECT a.lname, fname FROM a JOIN b WHERE b.sex='male'
  4.  
    SELECT a.lname, fname FROM a,b WHERE a.lname=b.lname AND sex='male'
  5.  
    SELECT lname, fname FROM a WHERE lname IN (SELECT lname FROM b)

Question 2

Какие обьекты в вашей базе помогут избежать безумных запросов с кучей JOINнов (которых обычно городят необученные новички):

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

Question 3

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

   A        B        C
  ------------------------
   1    дерево      гвозди
   2    дерево      гвозди
   3    дерево      гвозди
   4    металл      пайка
   5    металл      пайка
   6    стекло      шпаклевка
   7    стекло      шпаклевка

Учитывая, что A первичный ключ таблицы, какая самая базовая из нормальных форм, возможно нарушается?

  1.  1-я
  2.  4-я
  3.  5-я
  4.  2-я
  5.  3-я

Question 4

Обозначим через реверс (полную перестановку) для строки x. Тогда для реверс конкатенации строк x и y, будет:

  1.  
  2.  
  3.  
  4.  
  5.  

Question 5

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

   a        integer not null
   b        varchar(244) null

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

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