Читайте также: |
|
1. Вывести информацию о договорах, которые были оформлены в 2011 году:
SELECT *
FROM PACT WHERE (DATE_CONC > '31.12.2010') AND (DATE_CONC <= '31.12.2011')
Рисунок 2.12 – Результат выполнения запроса 1
Формула РА:
π S_NUM_FK,.N_PACT, N_PA, TITLE_PACT,.STATE, DATE_CONC, DATE_DISCONC, ID_OP_FK (σ (DATE_CONC> 31.12.2010)& (DATE_CONC<=31.12.2011) (PACT));
Формула РИК:
{p | p ‘PACT’ & $ p (PACT) & p (DATE_CONC > '31.12.2010') & (DATE_CONC <= '31.12.2011')}
2. Вывести информацию о договорах, в названии которых встречается слово «Интернет»:
SELECT *
FROM PACT WHERE TITLE_PACT LIKE '%Интернет%'
Рисунок 2.13 – Результат выполнения запроса 2
Формула РА:
π S_NUM_FK,.N_PACT, N_PA, TITLE_PACT,.STATE, DATE_CONC, DATE_DISCONC, ID_OP_FK (σ (TITLE_PACT=’%Интернет%’) (PACT))
Формула РИК:
{p | p ‘PACT’ & $ p (PACT) & p (TITLE_PACT = '%Интернет%')}
3. Вывести информацию о договорах, которые расторгнуты
SELECT *
FROM PACT WHERE STATE = 'Расторгнут'
Рисунок 2.14 - Результат выполнения запроса 3
Формула РА:
π S_NUM_FK,.N_PACT, N_PA, TITLE_PACT,.STATE, DATE_CONC, DATE_DISCONC, ID_OP_FK (σ (STATE=’Расторгнут’) (PACT))
Формула РИК:
{p | p ‘PACT’ & $ p (PACT) & p (STATE = 'Расторгнут')}
4. Вывести список лицевых счетов абонентов, у которых есть подключенные услуги
SELECT N_PA_FK, DATE_CON_S
FROM CON_SERVICE WHERE STATUS_S = 'Подключена'
Рисунок 2.15 - Результат выполнения запроса 4
Формула РА:
π N_PA_FK, DATE_CON_S (σ (STATE_S=’Подключена’) (CON_SERVICE))
Формула РИК:
{cs | cs ‘CON_SERVICE’ & $ cs (CON_SERVICE) & cs (STATE_S = 'Подключена')}
5. Посчитать количество договоров, оформленных в 2010 году
SELECT COUNT(S_NUM_FK)
FROM PACT WHERE (DATE_CONC > '31.12.2009') AND (DATE_CONC <= '31.12.2010')
Рисунок 2.16 – Результат выполнения запроса 5
Формула РА:
π COUNT(S_NUM_FK) (σ DATE_CONC > '31.12.2009') AND (DATE_CONC <= '31.12.2010') (PACT))
Формула РИК:
{p | p ‘PACT’ & $ p (PACT) & p (DATE_CONC > '31.12.2009') & (DATE_CONC <= '31.12.2010'))}
6. Вывести информацию об абонентах, у которых оформлено более одного договора
SELECT DISTINCT s.FIO
FROM SUBSCRIBER s, PACT p WHERE s.SER_NUM_FK=p.S_NUM_FK
Рисунок 2.17 – Результат выполнения запроса 6
Формула РА:
π FIO (σ (SER_NUM_FK = S_NUM_FK) (SUBSCRIBER >θ< SUBSCRIBER.SER_NUM_FK = PACT.S_NUM_FK PACT))
Формула РИК:
{s (FIO) | s ‘SUBSCRIBER’ & $ s (SUBSCRIBER) & p ‘PACT’ & $ p (PACT) & s (SER_NUM_FK) = p(S_NUM_FK)}
7. Вывести ФИО операторов, которые произвели оформление нескольких договоров
SELECT DISTINCT op.FIO
FROM OPERATOR op, PACT p WHERE op.ID_OP = p.ID_OP_FK
Рисунок 2.18 – Результат выполнения запроса 7
Формула РА:
π FIO (σ (ID_OP=ID_OP_FK) (OPERATOR >θ< OPERATOR.SER_NUM_FK = PACT.S_NUM_FK PACT))
Формула РИК:
{op (FIO) | op ‘OPERATOR’ & $ p (OPERATOR) & p ‘PACT’ & $ p (PACT) & op (ID_OP) = p(ID_OP_FK)}
8. Вывести ФИО абонентов, стоимость заказанных услуг которых более 200 рублей
SELECT s.FIO, s.SER_NUM_FK
FROM SUBSCRIBER s, CON_SERVICE cs, SERVICE sr WHERE ((cs.ID_SERVICE_FK = sr.ID_SERV) AND (sr.COAST > 200))
Рисунок 2.19 – Результат выполнения запроса 8
π FIO,SER_NU_FK (σ (ID_SERVICE_FK = ID_SERV) (CON_SERVICE >θ< (cs.ID_SERVICE_FK = sr.ID_SERV)&( sr.COAST > 200) SERVICE))
Формула РИК:
{s (FIO) | s ‘SUBSCRIBER’ & $ s (SUBSCRIBER) & cs ‘CON_SERVICE’ & $ cs (CON_SERVICE) & sr ‘SERVICE’ & $ sr(SERVICE) & (cs(ID_SERVICE_FK) = p(ID_SERV) & sr(COAST)>200)}
9. Вывести даты, в которые для абонентов проводилась техническая работа «Ремонт модема»
SELECT DISTINCT W.DATE_W, S.FIO
FROM CARRIED_WORK W, PACT P, SUBSCRIBER S, REPAIR R
WHERE ((W.NPACT_FK=P.N_PACT) AND (P.S_NUM_FK=S.SER_NUM_FK) AND (R.TITLE = 'Ремонт модема'))
Рисунок 2.20 – Результат выполнения запроса 9
π DATE_W, FIO (σ (NPACT_FK=N_PACT) (CARRIED_WORK >θ< (W.NPACT_FK=P.N_PACT)PACT >θ< (P.S_NUM_FK=S.SER_NUM_FK) SUBSCRIBER>θ< (R.TITLE = 'Ремонт модема') REPAIR))
Формула РИК:
{w (DATE_W), s(FIO) | w ‘CARRIED_WORK’ & $ w (CARRIED_WORK) & s ‘SUBCRIBER’ & s(SUBSCRIBER) & r ‘REPAIR’ & $ r (REPAIR) & ((W.NPACT_FK=P.N_PACT) AND (P.S_NUM_FK=S.SER_NUM_FK) AND (R.TITLE = 'Ремонт модема'))}
10. Вывести сумму услуг, подключенных 23.12.2011
SELECT S.COAST
FROM SERVICE S, CON_SERVICE CS WHERE ((S.ID_SERV=CS.ID_SERVICE_FK) AND CS.DATE_CON_S = '23.12.2011')
Рисунок 2.21 – Результат выполнения запроса 10
π COAST (σ (ID_SERV= ID_SERVICE_FK) (SERVICE >θ< (S.ID_SERV=CS.ID_SERVICE_FK)&( CS.DATE_CON_S = '23.12.2011') CON_SERVICE))
Формула РИК:
{s (COAST) | s ‘SERVICE’ & $ s (SERVICE) & cs ‘CON_SERVICE’ & $ cs (CON_SERVICE) & (s(ID_SERV) = p(ID_SERVICE_FK) & cs(DATE_CON_S)=’23.12.2011’)}
Дата добавления: 2015-07-10; просмотров: 83 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Физический уровень концептуальной схемы | | | Стратегии целостности базы данных |