CREATE TABLE employees (
employee_id SERIAL PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
position VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2),
hire_date DATE
);
CREATE TABLE products (
product_id SERIAL PRIMARY KEY,
product_name VARCHAR(100),
category VARCHAR(50),
price DECIMAL(10, 2),
stock_quantity NUMERIC(10, 2),
supplier VARCHAR(50)
);
CREATE TABLE sales (
sale_id SERIAL PRIMARY KEY,
employee_id INT,
product_id INT,
quantity_sold INT,
sale_date DATE,
sale_amount NUMERIC(10, 2),
FOREIGN KEY (employee_id) REFERENCES employees(employee_id),
FOREIGN KEY (product_id) REFERENCES products(product_id)
);
CREATE TABLE customers (
customer_id SERIAL PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
email VARCHAR(100),
phone VARCHAR(30),
address VARCHAR(100),
city VARCHAR(50),
state VARCHAR(50),
zip_code VARCHAR(10)
);
CREATE TABLE orders (
order_id SERIAL PRIMARY KEY,
customer_id INT,
order_date DATE,
shipping_date DATE,
order_status VARCHAR(20),
total_amount DECIMAL(10, 2),
FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
);
INSERT INTO employees (first_name, last_name, position, department, salary, hire_date)
VALUES
('John', 'Doe', 'Sales Manager', 'Sales', 75000.00, '2019-03-15'),
('Jane', 'Smith', 'Developer', 'IT', 85000.00, '2020-06-22'),
('Emily', 'Johnson', 'Accountant', 'Finance', 65000.00, '2021-01-10');
INSERT INTO products (product_name, category, price, stock_quantity, supplier)
VALUES
('Laptop', 'Electronics', 1200.00, 50, 'Tech Supplies Co.'),
('Office Chair', 'Furniture', 150.00, 200, 'Office Mart'),
('Notebook', 'Stationery', 2.50, 1000, 'Stationery World');
INSERT INTO sales (employee_id, product_id, quantity_sold, sale_date, sale_amount)
VALUES
(1, 1, 2, '2023-02-15', 2400.00),
(2, 2, 5, '2023-03-01', 750.00),
(3, 3, 10, '2023-04-10', 25.00);
INSERT INTO customers (first_name, last_name, email, phone, address, city, state, zip_code)
VALUES
('Alice', 'Brown', 'alice.brown@example.com', '123-456-7890', '123 Maple St', 'Springfield', 'IL', '62701'),
('Bob', 'Green', 'bob.green@example.com', '234-567-8901', '456 Oak St', 'Greenville', 'CA', '90210'),
('Charlie', 'White', 'charlie.white@example.com', '345-678-9012', '789 Pine St', 'Columbus', 'OH', '43215');
INSERT INTO orders (customer_id, order_date, shipping_date, order_status, total_amount)
VALUES
(1, '2023-02-10', '2023-02-15', 'Shipped', 2400.00),
(2, '2023-03-05', '2023-03-08', 'Shipped', 750.00),
(3, '2023-04-01', '2023-04-05', 'Shipped', 25.00);