Показаны сообщения с ярлыком 2010. Показать все сообщения
Показаны сообщения с ярлыком 2010. Показать все сообщения

09 февраля 2011

Пересдачи в феврале

По нынешним правилам, я типа должен  приезжать на факультет раз в неделю и ждать, не придёт ли кто ко мне пересдавать экзамен. Но так как желающих, если верить спискам, должно быть не более 5 человек, из которых 1 уже отчислен, и все их контакты у меня есть, то я считаю что мы сможем организовать процесс как-нибудь более эффективно.

10 февраля, на которое якобы запланирована пересдача, на самом деле никакой пересдачи не будет. По крайней мере её не будет с утра. Если кому -то очень критично именно 10 февраля что-то получить, напишите, договоримся о встрече днём. Если не критично, но пересдать что-то вы всё равно планируете, напишите пожелания о дате либо тут в комментариях либо письмом. Первое предпочтительней, потому что планы будут видны и остальным желающим.

Спасибо!

25 января 2011

Экзамен 25 января

11*5 + 5*4 + 1*3 = 78
78/17 = 4.58

Очень даже неплохо. Всех с Татьяниным днём!

24 января 2011

Экзамен 24 января

4*5 + 4*4 + 6*3 = 54
54/14 = 3.85

Похуже чем в декабре, да.

21 января 2011

Консультация 22 января

Не помню, во сколько консультация, но я собираюсь быть на матмехе примерно с начала второй пары. У тех, у кого есть долги по практике, есть шанс до консультации попробовать таки сдать практику.

03 января 2011

Post-mortem опросник по курсу СУБД-2010

Буду признателен, если сдавшие экзамен (и несдавшие, но не страдающие от конспирологических теорий, тоже) расскажут о своих впечатлениях. Это можно сделать в опроснике. Опросник анонимный и ответы никому не показываются, но если хотите поговорить публично, welcome в комменты к этой заметке.

Post-mortem опросник

29 декабря 2010

Экзамен 30 декабря

Группа 424, аудитория 3532, начало в 10:00. Так как экзаменаторов, судя по всему, только двое, а в аудитории дубак, то можно приходить попозже вместо того чтоб сидеть и мерзнуть в ожидании своей очереди. Одевайтесь потеплее и захватите термос

28 декабря 2010

Аттракцион невиданной щедрости

Тем, кто лучше всех себя проявил на практике* на экзамене достанется всего один вопрос вместо двух.

Список героев:

421 группа: Артём Зубрицкий, Александр Мельников,  Виктор Ниденс, Егор Усик

422 группа: Серафима Гольдвирт, Екатерина Жукова, Александр Сенов, Денис Сыров, Наталья Притыковская

424 группа: Александр Анисимов, Анна Блохина, Александр Киров, Антон Кореньков, Алексей Лукашев, Константин Невоструев.


* по мнению преподавателй практики

27 декабря 2010

25 ноября 2010

Практика 25 ноября

Разминка


Какие из этих запросов найдут в таблице Employee(name, salary) имена сотрудников с максимальной зарплатой и собственно максимальную зарплату?

  1. SELECT name, MAX(salary) FROM Employee
  2. SELECT E1.name, E1.salary
    FROM Employee E1 LEFT OUTER JOIN Employee E2 ON (E1.salary < E2.salary)
    WHERE E2.name IS NULL
  3. SELECT name, MAX(salary) FROM Employee
    GROUP BY name
  4. SELECT name, salary FROM Employee WHERE salary = (SELECT MAX(salary) FROM Employee)

18 ноября 2010

Практика 18 ноября

Разминка

Вы хотите просуммировать суммы выплаченных вашим сотрудникам зарплат за год и вывести в результат табличку с ФИО и суммой. Какие из этих запросов сделают то что вы хотите?
В таблице Payments есть поля employee_id (id сотрудника), name (ФИО сотрудника), month (месяц выплаты) и payment (сумма выплаты).

  1. SELECT name, SUM(payment) FROM Payments GROUP BY employee_id
  2. SELECT name, SUM(payment) FROM Payments GROUP BY employee_id, name
  3. SELECT p2.name, p1.sum_payment FROM
        (SELECT employee_id, SUM(payment) AS sum_payment
         FROM Payments GROUP BY employee_id) AS p1
             JOIN
         Payments p2 ON (p1.employee_id = p2.employee_id)


Слайды

11 ноября 2010

Практика 11 ноября

Разминка


У вас есть таблицы A(id) и B(a_id, b). Какие из этих запросов найдут те A.id, которые НЕ упоминаются в B.a_id ?

  1. SELECT id FROM A WHERE id NOT IN (SELECT a_id FROM B)
  2. SELECT id FROM A EXCEPT SELECT a_id AS id FROM B
  3. SELECT id FROM A LEFT OUTER JOIN B ON (A.id = B.a_id) 
    WHERE B.a_id IS NULL

Слайды

(полноэкранные)

28 октября 2010

Практика 28 октября

Разминка


Вопрос 1. Что получится в результате выполнения запроса?

Table1
a   b   c
---------
1   1   1
2   3   4
1   1   7
2   3   8

SELECT * FROM Table1 GROUP BY a


  1. Будет напечатана вся таблица 
  2. Для каждого значения "a" посчитают сумму в столбцах "b" и "c"
  3. Запрос не выполнится потому что не используются агрегатные функции
  4. Запрос не выполнится потому что в SELECT используются недопустимые в данном случае атрибуты
Вопрос 2. А с этим запросом и такой же таблицей что будет?

SELECT a, SUM(b) AS foo FROM Table1 GROUP BY a

1.
a foo
------
1 2
2 6

2.
a foo
------
1 2
2 2


Слайды
полноэкранные

14 октября 2010

Практика 14 октября

Разминка


Вопрос 1. Сколько строк будет в результате SELECT'а?
CREATE TABLE Автомобиль(
    рег_номер CHAR(6) PRIMARY KEY, марка VARCHAR(20))

INSERT INTO Автомобиль (рег_номер, марка)
  VALUES ('м000ск', 'Субару')

INSERT INTO Автомобиль (рег_номер, марка)
  VALUES ('м001ск', 'Cубару')
INSERT INTO Автомобиль (рег_номер, марка)
  VALUES ('м002ск', 'Subaru')

SELECT * FROM Автомобиль  WHERE марка = 'Субару'

Вопрос 2. Сколько будет в результате выполнения запроса если в таблице N строк?

CREATE TABLE Foobar (id INT PRIMARY KEY, value INT)
SELECT * FROM Foobar f1 JOIN Foobar f2 ON (f1.id = f2.id)

  1. 0 строк
  2. N строк
  3. N*N строк
  4. Заранее неизвестно
  5. Запрос не выполнится
Слайды

07 октября 2010

Разминка

Вопрос 1.

Что произойдет в результате выполнения скрипта:


CREATE TABLE A (
  a1 INT, a2 VARCHAR, a3 NUMERIC, UNIQUE (a1, a2))


CREATE TABLE B (
  b1 VARCHAR, b2 NUMERIC, b3 INT,
  FOREIGN KEY (b1, b2) REFERENCES A(a2,a3))


  1. Скрипт не выполнится, потому что внешний ключ не может быть составным
  2. Скрипт не выполнится, потому что ссылочные атрибуты не являются ключом
  3. Скрипт не выполнится, потому что имена ссылающихся и ссылочных атрибутов разные
  4. Скрипт выполнится без ошибок

Вопрос 2.

Вы делаете связь многие-ко-многим между товарами и поставщиками у которой есть собственный атрибут, например, цена данного товара у данного поставщика. Вы хотите чтоб цена была уникальна для пары (товар, поставщик). Чего не хватает в этом операторе?


CREATE TABLE Goods_Supplier(
  goods_id INT FOREIGN KEY REFERECES Goods,
  supplier_id INT FOREIGN KEY REFERENCES Supplier,
  price NUMERIC (10, 2) CHECK (price >= 0))

  1. Да вроде всё на месте
  2. Ограничения UNIQUE для цены
  3. Ограничения UNIQUE для каждого из внешних ключей
  4. Ограничения UNIQUE для пары внешних ключей
  5. Ограничения UNIQUE для всей тройки атрибутов
Слайды

30 сентября 2010

Практика 30 сентября

Разминка


Вопрос 1. Что произойдет в результате выполнения скрипта:

1: CREATE TABLE A (a1 INT, a2 VARCHAR)
2: INSERT INTO A (a2, a1) VALUES ('12345', 12345)


  1. Скрипт упадет потому что порядок атрибутов в добавляемом кортеже не соответствует порядку атрибутов в таблице
  2. Скрипт упадет потому что строчка '12345' не поместится в отведенный атрибуту a2 тип
  3. Скрипт выполнится успешно


Вопрос 2. Вам даны синтаксические правила:

<рецепт> := <тип_блюда> название_блюда : <список_ингредиентов>
<тип_блюда> := СУП | САЛАТ | ЗАКУСКА
<список_ингредиентов> := <ингредиент> [,...n]
<ингредиент> := <название продукта> [<число> <единица измерения>]
<название_продукта> := ЛУК | ПОМИДОР | CОЛЬ | ВОДА | ХЛЕБ | МАСЛО
<единица_измерения> := ГР. | ШТ. | СТ.Л. | СТАК.
<число> -- вещественное число с точкой

В каком из этих рецептов есть синтаксическая ошибка и почему?

  1. СУП томатный : ПОМИДОР 1000 ГР., ВОДА 2 ШТ.
  2. САЛАТ пикантный : ЛУК 1 ШТ., ПОМИДОР 2 ШТ., МАСЛО СТ.Л.
  3. ЗАКУСКА Хлеб-Соль : ХЛЕБ, СОЛЬ

Слайды

23 сентября 2010

Практика 23 сентября

Разминка

Вопрос 1.
Пусть существует связь R между множествами сущностей A и B. Кардинальность участника A равна 1, кардинальность участника B равна *. Какое из этих утверждений является верным?


1. Один экземпляр сущности A может участвовать только в одном экземпляре связи
2. Один экземпляр сущности B может участвовать только в одном экземпляре связи
3. В одном экземпляре связи участвует один экземпляр сущности A и неограниченное количество экземпляров сущности B

Вопрос 2.
Пусть класс A наследует класс B, а тот наследует класс С. Пусть есть еще класс D. Какое из этих утверждений является НЕверным?


1. В сущности А есть все свойства определенные в классе С
2. Сущности A и B могут принимать участие во всех связях, в которых могут принимать участие сущности C
3. При удалении какой-либо сущности C удаляются все сущности A и B
4. Сущность C не может участвовать в связи R(A,D)

Слайды (полноэкранные)