SQLize Online / PHPize Online  /  SQLtest Online

A A A
Share      Blog   Popular
Copy Format Clear
/* Схема данных реализует систему учета транзакций(покупок) в магазинах. Состоит из следующих таблиц: 1. zlo_customer - таблица клиентов (id-имя-фамилия-дата регистрации) 2. zlo_plu - таблица товаров (id-название-категория-цена-скидка) 3. zlo_store - таблица магазинов (id-название-регион) 4. zlo_transactions - таблица транзакций (id-id клиента-id товара-количество-id магазина-дата) */ create table zlo_customer ( customer_id INT primary key, customer_name VARCHAR(15), customer_last_name VARCHAR(15) ); create table zlo_plu ( plu_id INT primary key, plu_name VARCHAR(40), category VARCHAR(30), price FLOAT, discout FLOAT ); create table zlo_store ( store_id INT primary key, store_name VARCHAR(30), region_nm VARCHAR(30) ); create table zlo_transactions ( transaction_id INT primary key, customer_id INT references zlo_customer, plu_id INT references zlo_plu, amount FLOAT, store_id INT references zlo_store, datetime timestamp ); insert into zlo_customer values (123, 'Vyacheslav', 'Markov'), (213, 'Mark', 'Dmitrov'), (312, 'Valentin', 'Seleznev'), (321, 'Tatyana', 'Balabanova'), (132, 'Veronika', 'Petrova') insert into zlo_plu values (189, 'Vodka', 'Drinks', 460.7, 50.0), (276, 'Morkovka', 'Vegetables', 34.9, 5.0), (376, 'Baton', 'Bread', 45.5, 0.0), (493, 'Shokoladnyi vostorg 1kg', 'Candies', 300.8, 30.0), (523, 'Milk', 'Drinks', 65.4, 0.0) insert into zlo_stores values (951, 'Big', 'Moscow'), (078, 'Great', 'Saint-Petersburg'), (586, 'Soul', 'Vladimir'), (693, 'FarFarAway', 'Vladivostok'), (478, 'Hot', 'Sochi') CREATE OR REPLACE FUNCTION random_between(low INT ,high INT) RETURNS INT AS $$ BEGIN RETURN floor(random()* (high-low + 1) + low); END; $$ language 'plpgsql' STRICT; insert into zlo_transactions select customer_id, plu_id, amount::float, store_id, datetime::timestamp from generate_series('2022-01-01'::date, '2022-03-01'::date, '1 day'::interval) datetime cross join generate_series(1, 10) amount cross join zlo_customer cross join zlo_plu cross join zlo_store order by random();
Stuck with a problem? Got Error? Ask ChatGPT!
Copy Clear