Запретный фонд
Запретный фонд — закрытая часть библиотеки: кодексы, предметы и бумаги под замком. Вот девять его реестров, переживших пожар 1908 года. Коснитесь любого — свиток откроется, и его можно просто прочесть. Но в протокол дела запись ложится лишь тогда, когда вы спросили о ней у фонда точно — с условием. Опись целого реестра ответом не считается.
- SELECT * FROM persons;
- Показать реестр целиком. Для обзора годится, но в протокол такое не идёт: фонд принимает ответ с условием, а не опись.
- SELECT name, role FROM persons;
- Только нужные столбцы — на телефоне читается куда лучше.
- SELECT * FROM persons WHERE role = 'Watchman';
- Отбор по слову. Текст — в одинарных кавычках. Регистр букв фонду безразличен.
- SELECT * FROM persons WHERE name LIKE '%bak%';
- Поиск по куску слова.
%— «сколько угодно любых букв». - SELECT * FROM persons WHERE died IS NULL;
- Пустая клетка — это
NULL. Сравнивать её через=бесполезно, для неё естьIS NULLиIS NOT NULL. - SELECT * FROM crossings WHERE entered_at BETWEEN '1928-11-12' AND '1928-11-13 19:00';
- Промежуток. Даты хранятся текстом в порядке «год-месяц-день час:минута», и потому сравниваются как обычные строки.
- SELECT c.entered_at, s.person_id FROM crossings c
JOIN seals s ON c.seal_no = s.seal_no
WHERE c.room = 'OFFICE'; - Связать два реестра по общему полю. Так номер печати превращается в человека — чтением этого не добьёшься.
- SELECT * FROM crossings ORDER BY entered_at DESC LIMIT 5;
- Сортировка и предел.
DESC— от позднего к раннему. - SELECT room, COUNT(*) AS n FROM crossings GROUP BY room;
- Счёт по группам: сколько пересечений порога на каждое помещение.
- SELECT * FROM persons WHERE role = 'Watchman' AND born < 1885;
- Несколько условий разом:
AND— оба сразу,OR— хотя бы одно. - SELECT * FROM persons WHERE id IN (2, 3);
- Перечисление: подойдёт любое значение из списка.
Протокол осмотра
14 ноября 1928 года, 06:25. В подвальном хранилище B‑7 библиотеки ИТМО найден мёртвым профессор Эдуард Бенуа — хранитель запретного фонда, то есть тех подвальных полок, куда пускают по особому дозволению.
Дверь заперта изнутри. Окон нет. На столе — раскрытый кодекс. Следов борьбы не обнаружено, следов взлома тоже. На груди покойного — ожог.
Вы — специалист по оккультным письменам, и полиция Петрополя вызвала вас потому, что больше некого. Свидетелей университет не дал, но отпер свои реестры. Ведутся они на языке оккультистов: прочесть их можно, спросить — только на нём.