Как вы условно обновляете таблицу на основе текущего года?(Oracle SQL) - PullRequest
1 голос
/ 30 марта 2019

В настоящее время я занимаюсь школьным проектом, в котором нам нужно создать базу данных для управляющей компании.У меня есть около 14 таблиц, но только эти две имеют отношение к моему вопросу: BUILDING и TaxRates.

Требуется указать налоги (в долларах США) за год для каждого здания.Налоги рассчитываются на основе ставок в таблице TaxRates и значения landValue в таблице Building.Новые значения добавляются каждый год, а также сохраняются исторические ставки.

Как я могу обновить налоги в таблице Building, чтобы указанная сумма учитывала текущий год, а также город?

Полагаю, мне нужно начинать так, но я не уверен, что делать дальше и как учитывать текущий год.

UPDATE Building
SET taxes =
CASE WHEN 
CREATE TABLE Building (
    buildingID          NUMBER (10) NOT NULL PRIMARY KEY,
    addressID           NUMBER (10) NOT NULL,
    qtyUnits            NUMBER (3) NOT NULL,
    landValue           NUMBER (15) NOT NULL,
    purchasePrice       NUMBER (15) NOT NULL
    taxes               NUMBER (15) NOT NULL
);

CREATE TABLE TaxRates (
    taxID          NUMBER (5) NOT NULL PRIMARY KEY,
    city           VARCHAR2 (50) NOT NULL,
    taxRate        NUMBER (3) NOT NULL,
    year           NUMBER (4) NOT NULL,
);

РЕДАКТИРОВАТЬ: На самом деле есть еще одна таблица, которая имеет значение.Таблица AddressDetails.Ставка налога варьируется в зависимости от города.

CREATE TABLE AdressDetails (
    addressID   NUMBER (10) NOT NULL PRIMARY KEY,
    streetNo    Number (10) NOT NULL,
    streetName  VARCHAR2 (50) NOT NULL,
    postalCode  VARCHAR2 (6) NOT NULL Check
    city        VARCHAR2 (10) NOT NULL,
    province    VARCHAR2 (10) NOT NULL,
    buildingID  NUMBER (10) NOT NULL,
)```

1 Ответ

0 голосов
/ 30 марта 2019

Если вы хотите сохранить данные для каждого здания с указанием суммы налога за определенный год, вам понадобится еще одна таблица со столбцами здания, уплаченного налога и года.

Таким образом, столбец налогов исчезнет из таблицы вашего здания иновая таблица building_tax будет иметь внешние ключи к строительным и налоговым таблицам

Еще одна вещь, которую следует учитывать, если стоимость земли будет меняться каждый год и будет частью расчета налога ??

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...