|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MSFT SQL Server - Задачка |
|
MSFT SQL Server - Задачка
|
Пользователь Сообщения: 64 |
Профиль | Отправить PM | Цитировать Схема БД состоит из четырех таблиц:
Product(maker, model, type) PC(code, model, speed, ram, hd, cd, price) Laptop(code, model, speed, ram, hd, screen, price) Printer(code, model, color, type, price) Таблица Product представляет производителя (maker), номер модели (model) и тип ('PC' - ПК, 'Laptop' - ПК-блокнот или 'Printer' - принтер). Предполагается, что номера моделей в таблице Product уникальны для всех производителей и типов продуктов. В таблице PC для каждого ПК, однозначно определяемого уникальным кодом – code, указаны модель – model (внешний ключ к таблице Product), скорость - speed (процессора в мегагерцах), объем памяти - ram (в мегабайтах), размер диска - hd (в гигабайтах), скорость считывающего устройства - cd (например, '4x') и цена - price. Таблица Laptop аналогична таблице РС за исключением того, что вместо скорости CD содержит размер экрана -screen (в дюймах). В таблице Printer для каждой модели принтера указывается, является ли он цветным - color ('y', если цветной), тип принтера - type (лазерный – 'Laser', струйный – 'Jet' или матричный – 'Matrix') и цена - price. Найти тех производителей ПК, все модели ПК которых имеются в таблице PC. Какие будут предложения? |
|
Отправлено: 09:07, 22-08-2008 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать Это же азы TSQL
Решение данной и еще одной темы было удалено, т.к., помимо нарушений правил прохождения сертификации sql-ex.ru, это еще и неэтично - просить других сдать за вас сертификат... Учите матчасть, "специалисты", намного интереснее самому решить проблему, чем списать и не понять, в чем суть... |
Последний раз редактировалось Delirium, 16-08-2010 в 14:36. Причина: Решение удалено по просьбе sql-ex Отправлено: 11:48, 22-08-2008 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 64
|
Профиль | Отправить PM | Цитировать Большое спасибо за ответ
А вот еще задачка: Схема базы данных состоит из трех отношений: utQ (Q_ID int,Q_NAME varchar(35)) utV (V_ID int,V_NAME varchar(35),V_COLOR char(1)) utB (B_Q_ID int,B_V_ID int,B_VOL tinyint, B_DATETIME datetime) Таблица utQ содержит идентификатор и название квадрата, цвет которого первоначально черный. Таблица utV содержит идентификатор, название и цвет баллончика с краской. Таблица utB содержит информацию об окраске квадрата баллончиком: идентификатор квадрата, идентификатор баллончика, количество краски и время окраски. При этом следует иметь в виду, что: - баллончики с краской могут быть трех цветов - красный V_COLOR='R', зеленый V_COLOR='G', голубой V_COLOR='B' (латинские буквы). - объем баллончика равен 255 и первоначально он полный; - цвет квадрата определяется по правилу RGB, т.е. R=0,G=0,B=0 - черный, R=255, G=255, B=255 - белый; - запись в таблице закрасок utB уменьшает количество краски в баллончике на величину B_VOL и соответственно увеличивает количество краски в квадрате на эту же величину; - значение 0 < B_VOL <= 255 - Количество краски одного цвета в квадрате не превышает 255, а количество краски в баллончике не может быть меньше нуля. Предполагая, что среди идентификаторов квадратов имеются пропуски, найти минимальный и максимальный "свободный" идентификатор в диапазоне между имеющимися максимальным и минимальным идентификаторами. Если пропусков нет, выводить NULL. Например, для последовательности идентификаторов квадратов 1,2,5,7 результат должен быть 3 и 6 |
Отправлено: 12:35, 22-08-2008 | #3 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать По-моему, простого полноценного решения в один запрос здесь не изобрести.
|
Отправлено: 13:29, 22-08-2008 | #4 |
Пользователь Сообщения: 64
|
Профиль | Отправить PM | Цитировать Не не есть решение точно . Пока не знаю - сам думаю. Но как вымучаю - обязательно пропишу.
|
|
Отправлено: 14:17, 22-08-2008 | #5 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать Пока приходит на ум только так:
Да и ради двух чисел строить огромную временную таблицу - не эффективно. |
Отправлено: 14:48, 22-08-2008 | #6 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Цитата Busla:
Решение данной и еще одной темы было удалено, т.к., помимо нарушений правил прохождения сертификации sql-ex.ru, это еще и неэтично - просить других сдать за вас сертификат... Учите матчасть, "специалисты", намного интереснее самому решить проблему, чем списать и не понять, в чем суть... |
|
------- Последний раз редактировалось Delirium, 16-08-2010 в 14:37. Причина: Решение удалено по просьбе sql-ex Отправлено: 02:15, 27-08-2008 | #7 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Задачка по GPO | Lavrentiy | Microsoft Windows NT/2000/2003 | 6 | 28-11-2008 17:55 | |
Задачка по С++ | kiri | Программирование и базы данных | 1 | 21-06-2006 02:57 | |
Задачка | VuDZ | Программирование и базы данных | 4 | 02-04-2003 17:44 | |
Задачка | noname00.pas | Программирование и базы данных | 6 | 07-12-2001 11:43 | |
Задачка... | noname00.pas | Программирование и базы данных | 4 | 28-11-2001 03:17 |
|