Sunteți pe pagina 1din 2

CREATE TABLE Branch (

branchNo CHAR(4) NOT NULL,


street VARCHAR(20) NOT NULL,
city VARCHAR(20) NOT NULL,
postcode VARCHAR(10) NOT NULL,
PRIMARY KEY (branchNo)
);

CREATE TABLE Staff (


staffNo VARCHAR(4) NOT NULL,
fName VARCHAR(20) NOT NULL,
lName VARCHAR(20) NOT NULL,
APosition VARCHAR(20) NOT NULL,
sex CHAR(1),
DOB DATE,
salary DECIMAL(8,2) NOT NULL,
branchNo CHAR(4) NOT NULL,

PRIMARY KEY (staffNo),


FOREIGN KEY (branchNo)
REFERENCES Branch(branchNo)
);

CREATE TABLE PrivateOwner (


ownerNo VARCHAR(4) NOT NULL,
fName VARCHAR(20) NOT NULL,
lName VARCHAR(20) NOT NULL,
address VARCHAR(50) NOT NULL,
telNo VARCHAR(20) NOT NULL,
PRIMARY KEY (ownerNo)
);

CREATE TABLE PropertyForRent (


propertyNo VARCHAR(4) NOT NULL,
street VARCHAR(50) NOT NULL,
city VARCHAR(20) NOT NULL,
postcode VARCHAR(10) NOT NULL,
propertyType VARCHAR(20) NOT NULL,
rooms SMALLINT NOT NULL,
rent INT NOT NULL,
ownerNo VARCHAR(7) NOT NULL,
staffNo VARCHAR(4),
branchNo VARCHAR(4) NOT NULL,
PRIMARY KEY (propertyNo),
FOREIGN KEY (ownerNo)
REFERENCES PrivateOwner(ownerNo),
FOREIGN KEY (staffNo)
REFERENCES Staff(staffNo),
FOREIGN KEY (branchNo)
REFERENCES Branch(branchNo)
);
CREATE TABLE Client (
clientNo VARCHAR(4) NOT NULL,
fName VARCHAR(20) NOT NULL,
lName VARCHAR(20) NOT NULL,
telNo VARCHAR(20) NOT NULL,
prefType VARCHAR(20) NOT NULL,
maxRent DECIMAL(4, 1) NOT NULL,
PRIMARY KEY (clientNo)
);

CREATE TABLE Viewing (


clientNo VARCHAR(4) NOT NULL,
propertyNo VARCHAR(4) NOT NULL,
viewDate DATE NOT NULL,
Acomments VARCHAR(100),
PRIMARY KEY (propertyNo, clientNo),
FOREIGN KEY (propertyNo)
REFERENCES PropertyForRent(propertyNo),
FOREIGN KEY (clientNo)
REFERENCES Client(clientNo)
);

CREATE TABLE Registration (


clientNo VARCHAR(4) NOT NULL,
branchNo VARCHAR(4) NOT NULL,
staffNo VARCHAR(4) NOT NULL,
dateJoined DATE NOT NULL,
PRIMARY KEY (clientNo, branchNo),
FOREIGN KEY (clientNo)
REFERENCES Client(clientNo),
FOREIGN KEY (branchNo)
REFERENCES Branch(branchNo),
FOREIGN KEY (staffNo)
REFERENCES Staff(staffNo)
);

/*KUIS*/
SELECT staffNo,salary/12 AS monthlysalary
FROM Staff
WHERE salary/12>1000;
/*SELECT * FROM STAFF ;*/

S-ar putea să vă placă și