Логички и физички дизајн - Креирање база податоци (со SQL DDL): Polnenje2.sql

File Polnenje2.sql, 3.7 KB (added by 181549, 8 months ago)
Line 
1
2truncate table users cascade;
3truncate table business cascade;
4truncate table client cascade;
5truncate table feedback cascade;
6truncate table competition cascade;
7truncate table guest_pay cascade;
8truncate table "subscription" cascade;
9truncate table reservation cascade;
10
11INSERT INTO users (name, email, "password", "location")
12VALUES
13 ('Park', 'alice@email.com', 'pass123', 'New York'),
14 ('TCC', 'bob@email.com', 'pass456', 'London'),
15 ('Marriott', 'charlie@email.com', 'pass789', 'Paris'),
16 ('David Miller', 'david@email.com', 'passabc', 'Tokyo'),
17 ('Eva Davis', 'eva@email.com', 'passdef', 'Sydney'),
18 ('Frank White', 'frank@email.com', 'passghi', 'Berlin');
19
20INSERT INTO business (user_id, address)
21SELECT id,
22 CASE
23 WHEN email = 'alice@email.com' THEN '123 Main Street'
24 WHEN email = 'bob@email.com' THEN '456 Oak Avenue'
25 WHEN email = 'charlie@email.com' THEN '789 Elm Street'
26 ELSE null
27 END AS address
28FROM users
29WHERE email IN ('alice@email.com', 'bob@email.com', 'charlie@email.com');
30
31INSERT INTO client (user_id, date_of_birth)
32SELECT id,
33 CASE
34 WHEN email = 'david@email.com' THEN TO_DATE ('1994-06-08', 'YYYY-MM-DD')
35 WHEN email = 'eva@email.com' THEN TO_DATE ('2000-06-02', 'YYYY-MM-DD')
36 WHEN email = 'frank@email.com' THEN TO_DATE ('1982-03-01', 'YYYY-MM-DD')
37 ELSE null
38 END AS date_of_birth
39FROM users
40WHERE email IN ('david@email.com', 'eva@email.com', 'frank@email.com');
41
42 //
43INSERT INTO feedback (client_id, business_id, "comment", rating)
44VALUES
45 (1, 1, 'Great service from Business', 5),
46 (2, 1, 'Excellent experience with Busines', 4),
47 (1, 3, 'Could be better for Business', 3),
48 (3, 2, 'Fantastic support from Business', 5),
49 (3, 1, 'Average service from Business', 2);
50
51INSERT INTO competition (client_id, business_id, "name", eligibility)
52VALUES
53 (1, 1, 'Summer Contest', 1),
54 (2, 1, 'Holiday Giveaway', 2),
55 (3, 3, 'Spring Sweepstakes', 1),
56 (1, 2, 'Winter Challenge', 3),
57 (3, 3, 'Fall Festival', 2);
58
59INSERT INTO "subscription" (client_id, "type", price)
60VALUES
61 (1, 'Small', 10),
62 (2, 'Medium', 20),
63 (3, 'Large', 30);
64
65INSERT INTO guest_pay (client_id, "type", amount)
66VALUES
67 (1, 'Credit Card', 50),
68 (2, 'PayPal', 30);
69
70INSERT INTO reservation (client_id, business_id, "time", "date")
71VALUES
72 (1, 1, '14:00:00', '2023-05-20'),
73 (2, 1, '18:30:00', '2023-06-10'),
74 (3, 1, '12:15:00', '2023-07-05'),
75 (1, 2, '20:00:00', '2023-08-15'),
76 (3, 3, '16:45:00', '2023-09-01'),
77 (2, 3, '19:30:00', '2023-10-12'); //
78
79-- Create client
80INSERT INTO users (name, email, password, location) values ('John Smith', 'john@email.com', 'passcode123', 'Skopje');
81INSERT INTO client (user_id, date_of_birth) select id, '1994-06-08' from users where email='john@email.com';
82
83
84-- Create business
85INSERT INTO users (name, email, password, location) values ('Park', 'park@email.com', 'passcode567', 'Skopje');
86INSERT INTO business (user_id, address) select id, '365 West Street' from users where email='park@email.com';
87
88insert into reservation (client_id, business_id, "time", "date")
89values (
90 (select client.id from client join users on users.id = client.user_id where email = 'john@email.com'),
91 (select business.id from business join users on business.user_id = users.id where email = 'park@email.com'),
92 '14:00',
93 '2000-12-01'
94 )
95 -- Leave feedback
96 insert into feedback (client_id, business_id, "comment", rating)
97values (
98 (select client.id from client join users on users.id = client.user_id where email = 'john@email.com'),
99 (select business.id from business join users on business.user_id = users.id where email = 'park@email.com'),
100 'Odlicno', 4
101
102)