PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да изградите релационни таблици в двустранен пазар

Трябва да разберете основния начин за релационно записване на информация, т.е. в таблици.

Намиране на достатъчно маси

Просто имайте базова таблица за всяко твърдение, от което се нуждаете, за да опишете бизнес ситуация:

User(user_id,name,...)
    // User [user_id] is named [name]
Contacted(contact_id,item,offer_id)
    // user [contact_id] was contacted re item [item] offered by user [offer_id]
...etc...

Параметрите на оператора са колоните на таблицата.

Ако искате да говорите за частите на нещо, което смятате, че има множество части (хетерогенни или хомогенни), това просто означава, че някои твърдения ще включват нещо и неговите части:

table request(request_id,start_date,end_date,...)
    // [request_id] goes from [start_date] to [end_date] and ...
table requested(request_id,item_id,person_id,...)
    // person [person_id] requested item [item_id] in request [request_id]

Какво има в таблица

Стойността на базовата таблица са редовете, които правят твърдението й вярно. (Всеки подизраз на заявка също има израз и неговата стойност са редовете, които правят израза му верен.)

Не бъркайте таблични изявления с бизнес правила. Бизнес правилата гласят истините. Но изявлението на таблицата е изявление, което някои кортежи правят вярно (и отива в таблицата) или невярно (остава извън таблицата). Всички верни и неверни твърдения от таблиците ви казват всичко, което трябва да знаете за бизнеса. Бизнес правилата никога няма да им противоречат. (Тъй като винаги са верни.)

Пренареждане към по-добри таблици

Ключът е набор от колони, на които всички други колони са такива функции, но нито една от чиито подмножества няма това свойство. Една таблица може да има повече от един ключ.

За да направите базата данни по-лесна за актуализиране и заявки, трябва да разделите определени изрази, които са други изрази, свързани с И. Разделяне, докато всяко изявление се състои от изявление само за ключови колони И с изявления от тази форма:

[my_column]=my_function([key_k_column_1],[key_k_column_2],...)

където key_k_column_1,... са колони от същия ключ key_n.

(Такава таблица е "в пета нормална форма" и темата е "нормализиране".)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. модели на миграция на производствени данни при непрекъсната доставка

  2. Копиране на Postgres от променлива с CSV данни

  3. PostgresQL SQL:Преобразуване на резултатите в масив

  4. Postgres Следващ/Предишен ред SQL заявка

  5. Грешка при опит за стартиране на pgAdmin4