22606

Реляційне числення. Мова “Альфа”

Лекция

Математика и математический анализ

RANGE ОПД X GET WП.КД = Д3 RANGE ОПД X – оператор декларації ОПД – тип X – змінна. Перший варіант: RANGE Д X GET WОПД.колір = червоний RANGE ОПД Y GET W2П.

Украинкский

2013-08-04

58.5 KB

1 чел.

II.2. Реляційне числення. Мова “Альфа”

Реляційне числення Кодда є одним із найважливіших наріжних каменів теорії реляційних моделей баз даних. У СУБД, що існували до появи реляційного підходу, було багато засобів для обробки даних і формулювання запитів. Основою для їх розробки та впровадження виступали практичні потреби тої, чи іншої предметної області, або кількох областей. У дореляційну епоху не було створено теоретичного критерію стосовно повноти мовних засобів для формування запитів у межах певного класу мов. Ситуація у цьому розумінні видавалася досить складною: з одного боку множина запитів на основі природної мови (неформалізована область) і з іншого боку мовні засоби СУБД, тісно повязані з іноді досить складними структурами даних.

Алфавіт.

V1 = {a; r; P; };  V2 = {; ; ; ; };  V3 = {=; ; ; ; ; };  V4 = {[; ]; (; ); ,; :};

V = V1 V2 V3  V4;

Індекси – це слова виду ... (m - штук), m = 0,1,2,...

Константи – слова виду а... (m - штук), m = 0,1,2,...; позначення - am; a=a0;

Змінні – слова виду r... (m - штук), m = 0,1,2,...; позначення - rm;

Предикати (унарні)  – слова виду P... (m - штук), m = 0,1,2,...; позначення - Pm;

Зрізи – слова виду r...[...] (i та m - штук), і,m = 0,1,2,...; позначення – ri[m];

Далі з урахуванням раніш введених визначень та позначень специфікуємо наступні поняття:

Терми значень – слова виду Pi rj;

 Терми зєднань – слова виду    , або   , де , -- зрізи, - константа, - бінарний предикат (порівняння).

Приклади термів зєднань:

r1[3] r2[1];  r1[2] = a ;

Правильно побудовані формули (ППФ)

  1.  Всі терми значень і терми зєднань є ППФ. Всі їх змінні – вільні.
  2.  Якщо F – ППФ, то F – ППФ. Змінні залишаються вільними.
  3.  Якщо F1 і F2ППФ і їх спільні змінні вільні у кожній з формул, то F1  F2, F1  F2  ППФ. Змінні вільні у F1  F2, F1  F2, якщо вони вільні принаймні у одній формулі.
  4.  Якщо F – ППФ і r – вільна у ній змінна, то r(F), r(F) – ППФ; r – звязана змінна.
  5.  Інших ППФ немає.

Приклади ППФ:

P1r2  (r2[1]  r3[2])

r2 ((P1 r1  P2r2) (r[1] r[2]))

Безкванторна ППФ F називається правильно визначеною (ПВ) над змінною r, якщо виконуються такі умови:

  1.  r єдина змінна в F;
  2.  всі терми в F є термами значень;
  3.   входить в F тільки після , або відсутній.

Нехай  F -- ППФ ПВ над r, а G -- ППФ і має r як вільну змінну, але не має термів значень виду Pir, тоді будемо використовувати позначення:

r (F G) --- F (G)

r (F G) --- F (G)

ППФ W називається формулою з областю визначення (ФОВ), якщо виконуються вимоги:

  1.  W = U1  U2  ... Un  V, n1;
  2.  Ui ,i = 1,2,...,n – є ПВ формулою над змінною ri (i j   ri  rj)
  3.  V – або пуста, або ППФ, що задовольняє умовам:
  •  квантори входять у V тільки у вигляді F(G), або  F(G);
  •  кожна вільна змінна з V є вільною в одній з Ui ;
  •  у V немає термів значень з вільними змінними.

Приклади ФОВ:

У мові “Альфа” описуються властивості даних, які треба знайти.

Приклади.

  1.  Знайти всі відомості про всіх постачальників.

GET W(П.КП, П.прізвище, П.статус, П.місто)

GET W(П)

  1.  Знайти коди постачальників з статусом більше 20, що живуть в місті N

GET W(П.КП): П.статус > 20 Ù П.місто = ‘N’

GET W(П.КП, П.статус): П.місто = ‘N’ DOWN П.статус

GET W(1) – код постачальника з найбільшим статусом.

  1.  Знайти прізвища постачальників, що постачають деталь Д3.

RANGE ОПД X

GET W(П.прізвище): $X (X.КП = П.КП & X.КД = Д3)

RANGE ОПД X – оператор декларації, ОПД – тип, X – змінна.

Змінні, що входять під квантор, обов’язково декларуються.

  1.  Знайти прізвища постачальників, які постачають принаймні одну червону деталь.

Перший варіант:

RANGE Д X

GET W(ОПД.КП): $X (X.КД = ОПД.КД & X.колір = червоний)

RANGE ОПД Y

GET W2(П.прізвище): $Y (Y.КП = П.КП)

Другий варіант:

RANGE Д X

RANGE ОПД Y

GET W(П.прізвище): $X $Y (Y.КП = П.КП & X.КД = Y.КД & X.колір = червоний)

  1.  Знайти прізвища тих постачальників, які постачають принаймні одну деталь, яку постачає постачальник П5.

RANGE ОПД X

RANGE ОПД Y

GET W(П.прізвище): $X $Y (X.КП = П.КП & X.КД = Y.КД & Y.КП = П5)

Зауваження: В мові “Альфа” порядок однойменних кванторів несуттєвий, різних кванторів – суттєвий.

  1.  Знайти прізвища тих постачальників, які не постачають деталь Д1.

Від супротивного:

RANGE ОПД X

GET W(П.прізвище): Ø($X(X.КП = П.КП & X.КД = Д1))

Або:

GET W(П.прізвище): "X(X.КП ¹ П.КП Ú X.КД ¹ Д1)

  1.  Знайти прізвища постачальників, які постачають всі деталі.

RANGE Д X

RANGE ОПД Y

GET W(П.прізвище): "X $Y(Y.КП = П.КП & Y.КД = X.КД)

  1.  Знайти прізвища тих постачальників, що постачають принаймні всі ті деталі, що і Петренко.

RANGE ОПД X

RANGE ОПД X1

RANGE Д Y

RANGE П Z

GET W(П.прізвище): "Y ($X $Z (X.КП = Z.КП & X.КД = Y.КД & Z.прізвище = Петренко) Þ

$X1 (X1.КП = П.КП & X1.КД = Y.КД))

  1.  Знайти коди одержувачів, які не одержують жодної червоної деталі від постачальників з міста N.

RANGE П X

RANGE Д Y

RANGE ОПД Z

GET W(О.КО): Ø($Z $X $Y (X.місто = N & Y.колір = червоний & Z.КП = X.КП

& Z.КД = Y.КД & Z.КО = О.КО))

  1.  Знайти прізвища постачальників, які постачають одну і ту ж саму деталь всім одержувачам

RANGE О X

RANGE Д Y

RANGE ОПД Z

GET W(О.КО): $Y "X $Z (Z.КП = П.КП & Z.КД = Y.КД & Z.КО = X.КО)

  1.  Знайти коди одержувачів, потреби яких повністю задовольняє постачальник з кодом П7.

RANGE ОПД X

GET W(О.КО): "X (X.КО = О.КО Þ X.КП = П7)

  1.  Знайти коди деталей, які постачаються всім одержувачам з міста ‘N’.

RANGE ОПД X

RANGE О Y

GET W(Д.КД): "Y (Y.місто = ‘N’ Þ $X (X.КД = Д.КД & X.КО = Y.КО))

  1.  Знайти номери одержувачів, які використовують тільки ті деталі, що постачаються від поставника П7.

RANGE ОПД X

RANGE Д Y

RANGE ОПД Z

GET W(О.КО): "Y ($Z (Z.КД = Y.КД & Z.КО = О.КО) Þ $X(X.КД = Y.КД & X.КП = П7))

  1.  Знайти номери одержувачів, які використовують принаймні декілька деталей від постачальника П7

RANGE ОПД X

RANGE Д Y

RANGE ОПД Z

GET W(О.КО): "Y ($Z (Z.КД = Y.КД & Z.КО = О.КО) Þ $X(X.КД = Y.КД & X.КО = О.КО & X.КП = П7))

  1.  Змінити колір деталі Д6 на червоний.

HOLD W(Д.КД, Д.колір): Д.КД = Д6

W.колір = червоний

UPDATE W

HOLD – здійснюється пошук, але залишається вказівник на на тому місці, звідки дані отримані.

Також використовуються: DELETE W – вилучення даних, PUT W – внесення даних.

  1.  Знайти загальну кількість постачальників.

GET W(COUNT (П.КП))

COUNTпідраховує поля будь-яких типів.

Також використовуються: TOTAL, MAX, MIN, AVERAGE – використовуються лише по арифметичним полям.

  1.  Знайти коди постачальників з найбільшим статусом.

GET W(П.КП): TOP(1, П.статус)

Також використовується BOTTOM.

  1.  Для кожної деталі, що постачається, знайти її номер та загальний об’єм поставки.

GET W(ОПД, КД, iTOTAL(ОПД, КД, кількість))

Параметри iTOTAL в даному випадку  – ‘ОПД’ – реляція, в якій відбувається групування по атрибуту ‘КД’ і для кожної групи підраховується сума по атрибуту ‘кількість’.

Також використовуються: iCOUNT, iMAX, iMIN, iAVERAGE.

  1.  Знайти коди деталей, що постачаються більш ніж одним постачальником.

GET W(ОПД.КД):iCOUNT(ОПД, КД, КП) > 1


 

А также другие работы, которые могут Вас заинтересовать

27128. Функции управления. Управленческие циклы 198.5 KB
  Функции управления. Функция управления определенный вид управленческой деятельности который либо осуществляется достаточно регулярно и часто либо данный вид работ выполняется нерегулярно но их результаты имеют существенные последствия для организации. Я ПОДУМАЮ это определение слова функция Функции управления исходя из их роли в управлении предприятием делят на: 1. Классическим делением функций управления на подфункции является их деление по стадиям управленческого цикла.
27129. Ценовая политика 34 KB
  Ценовая политикаэто определение и поддержание на оптимальном уровне цен на товары с учетом их взаимосвязи в рамках ассортимента в условиях конкретного рынка а также своевременное изменение цен по товарам и рынкам для достижения максимально возможного успеха в конкретной рыночной ситуации. Структура ценовой политики: исходное ценообразование на товар ценообразование в рамках товарной номенклатуры изменение цены контроль за уровнем наценок устанавливаемых посредником создание барьеров по удержанию покупателей разработка программ...
27130. Конкурентные преимущества товара и фирмы на рынке 14.51 KB
  Конкурентное преимущество –характеристики свойства марки или товара которые создают для фирмы определенное превосходство над прямыми конкурентами. Эти характеристики могут относиться как к самому товару так и к дополнительнымуслугам формам производства сбыта или продаж специфичным для фирмы или товара. Конкурентное преимущество это те характеристики свойства товара или марки которые создают для фирмы определенное превосходство над своими прямыми конкурентами.
27131. Ситуационное лидерство (ситуационное руководство) 14.5 KB
  Ситуационное лидерство ситуационное руководство это стиль управления людьми предполагающий использование одного из четырех стилей управления в зависимости от ситуации и уровня развития сотрудников по отношению к задаче. Стили лидерства: Директивный стиль или Лидерство путем приказа высокая ориентация на задачу и низкая на людей. Наставнический стиль или Лидерство путем продажи идей совмещение высокой ориентированности на задачу и на людей. Поддерживающий стиль или Лидерство путем участия в организации процесса работы высокая...
27132. Оценка эффективности электронных и квазиэлектронных предприятий. Total Cost Ownership, Balanced Scorecard 36.5 KB
  в среднем можно ожидать около 5 учитывая что привлекать мы будем именно потенциальных покупателей а не случайных людей. Расчет: Колво покупателей = колво посетителей 100 х конверсии = 240.000 покупателей за 6 месяцев. Валовая прибыль = колво покупателей х средний чек = 12.
27133. Структурированная процесс-модель «бизнес-контент-менеджмент» 1.85 MB
  Структурированная процессмодель бизнесконтентменеджмент Одно из главных требований предъявляемых к построению современного электронного бизнесрешения как можно более быстрая трансформация бизнесидеи в конкретное решение которое соответствует запросам пользователя не требует значительных расходов на поддержку функционирует эффективно и с невысокими издержками и имеет стройную организацию. Структурированная процессмодель дает солидную основу для старта проекта Процессмодель концепция бизнес контент менеджмент состоит из...
27135. Электронная коммерция: B2B. Виртуальные торговые площадки 16.68 KB
  Виртуальные торговые площадки B2B англ. Возможности Интернет позволяют совершать покупки продажи в режиме реального времени и благодаря доступности Интернет в торговой деятельности площадки могут участвовать компании из разных точек земного шара. Площадки типа buyerdriven. В качестве примера можно взять автомобильную промышленность где GM Ford и Daimler Chrysler объединились для создания глобальной онлайновой торговой площадки или здравоохранение где Tenant Healthcare объединила усилия с Ventro ранее Chemdex для создания...
27136. Электронная коммерция: B2C. Интернет-магазины 18.27 KB
  Интернетмагазины. Один из наиболее популярных инструментов B2C – это интернетмагазин. Полная автоматизация 3 Продвинутый Advanced – торговая интернетсистема. Предполагает что интернетмагазин интегрирован с внутренней информационной системой предприятия ERP система бух.