Partdesc Unitprice Unitprice Unitprice 5 100 2: Round
Partdesc Unitprice Unitprice Unitprice 5 100 2: Round
--2-SELECT ORDNO 'Order Number', QUOTEPRICE 'Price' FROM ORDPART WHERE PARTID = 'DW100' ORDER BY QUOTEPRICE DESC;
--3-USE Orders GO INSERT INTO PART VALUES ('CH500', 'KETTLE', 1, 0.00, 3, 10, 1, 'N'); SELECT 'Order Date'= CASE WHEN DATENAME(D, GETDATE()) IN ('1','21','31') THEN DATENAME(DD,GETDATE())+'st of '+DATENAME(MONTH,GETDATE())+', '+DATENAME(YEAR,GETDATE()) WHEN DATENAME(D, GETDATE()) IN ('2','22') THEN DATENAME(DD,GETDATE())+'nd of '+DATENAME(MONTH,GETDATE())+', '+DATENAME(YEAR,GETDATE()) WHEN DATENAME(D, GETDATE()) IN ('3','23') THEN DATENAME(DD,GETDATE())+'rd of '+DATENAME(MONTH,GETDATE())+', '+DATENAME(YEAR,GETDATE()) ELSE DATENAME(DD,GETDATE())+'th of '+DATENAME(MONTH,GETDATE())+', '+DATENAME(YEAR,GETDATE()) END, UNONHAND 'Qty', 'RM'+CONVERT(VARCHAR, UNITPRICE, 1) 'Price', 'RM'+CONVERT(VARCHAR, UNITPRICE*UNONHAND, 1) 'Total' FROM PART;
--4a-SELECT CONVERT(VARCHAR, ORDS.ORDDTE, 106) 'Order Date', PART.PARTDESC 'Description', ORDPART.QTY 'Qty', ORDPART.QUOTEPRICE 'Price', ORDPART.QTY*ORDPART.QUOTEPRICE 'Total' FROM PART, ORDPART, ORDS WHERE PART.PARTID = ORDPART.PARTID AND ORDPART.ORDNO = ORDS.ORDNO;
--4b---ADDCUST SCRIPT-USE Orders GO INSERT INTO CUST VALUES ('GREEN', '2 JET DRV', 0, 1000, 2); SELECT CUSTNAME 'custname', BALANCE 'balance', ORDNO 'ordno', CONVERT(VARCHAR, ORDDTE, 6) 'Order Date' FROM CUST LEFT JOIN ORDS ON CUST.CUSTNO = ORDS.CUSTNO;
--5b-SELECT ORDS.ORDNO 'Order Number', CUST.CUSTNAME 'Customer Name', 'RM'+CAST(SUM(QTY*QUOTEPRICE) AS VARCHAR) 'Total Price' FROM ORDS JOIN CUST ON ORDS.CUSTNO = CUST.CUSTNO JOIN ORDPART ON ORDS.ORDNO = ORDPART.ORDNO GROUP BY ORDS.ORDNO, CUST.CUSTNAME;
--6a-SELECT CUSTNAME 'Customer Name' FROM CUST JOIN ORDS ON CUST.CUSTNO = ORDS.CUSTNO WHERE ORDDTE = (SELECT ORDDTE FROM ORDS WHERE ORDNO = 4);
--6b-SELECT ORDNO, PART.PARTID, PARTDESC FROM ORDPART JOIN PART ON ORDPART.PARTID = PART.PARTID WHERE ORDNO IN ( SELECT ORDNO FROM ORDPART WHERE PARTID IN ( SELECT PARTID FROM ORDPART WHERE ORDNO = 8)) AND ORDNO != 8;
--7-BEGIN TRANSACTION --7a-INSERT INTO CUST VALUES('ASYRAF', '31 TMN BARU', 0.00, 1000.00, 2); SAVE TRANSACTION A --7b-INSERT INTO ORDS VALUES(60, GETDATE(), 7); --ROLLBACK TRANSACTION A-- /*USE IF ERROR*/ SAVE TRANSACTION B --7c-INSERT INTO ORDPART VALUES(60, 'DW100', 1, 900.00); INSERT INTO ORDPART VALUES(60, 'VC100', 1, 230.00); --ROLLBACK TRANSACTION B-- /*USE IF ERROR*/ SAVE TRANSACTION C --7d-UPDATE CUST SET BALANCE = 350.00 WHERE CUSTNO = 7; --ROLLBACK TRANSACTION C-- /*USE IF ERROR*/ SAVE TRANSACTION D --7e-DELETE FROM ORDPART WHERE PARTID = 'DW100' AND ORDNO = 60; --ROLLBACK TRANSACTION D-- /*USE IF ERROR*/ SAVE TRANSACTION E COMMIT TRANSACTION;
--9a-CREATE TABLE Animal (AnimalId INT NOT NULL, OwnerId INT NOT NULL, AnimalName VARCHAR(25) NOT NULL, Gender VARCHAR(1), Desexed VARCHAR(1) DEFAULT 'N', YrBorn INT, FirstVisit SMALLDATETIME DEFAULT GETDATE() CONSTRAINT Animal_AnimalId_PK PRIMARY KEY (AnimalId));
--9b-ALTER TABLE Owners ALTER COLUMN OwnerId INT NOT NULL; ALTER TABLE Owners ADD CONSTRAINT Owners_OwnerId_PK PRIMARY KEY (OwnerId);
--9c-ALTER TABLE Animal ADD CONSTRAINT Animal_OwnerId_FK FOREIGN KEY (OwnerId) REFERENCES Owners(OwnerId);
--10a-CREATE VIEW CustDet(customer, orddte, ordno, totalamt) AS SELECT CUSTNAME, CONVERT(VARCHAR, ORDDTE, 111), ORDS.ORDNO, SUM(QTY*QUOTEPRICE) FROM ORDS JOIN CUST ON ORDS.CUSTNO = CUST.CUSTNO JOIN ORDPART ON ORDS.ORDNO = ORDPART.ORDNO GROUP BY CUSTNAME, ORDDTE, ORDS.ORDNO ;
--10c-USE Classwork GO CREATE VIEW DeptVu(DeptNumber, DeptName) AS SELECT DEPTNO, DNAME FROM DEPT;
--11b-CREATE SYNONYM Owner20 FOR Orders.dbo.Owners; SELECT OwnerFamName, OwnerOtherNames FROM Owner20;
--12a-SELECT ORDS.ORDNO 'ordno', CONVERT(VARCHAR, ORDDTE, 6) 'Orddte', SUM(QTY*QUOTEPRICE) 'Total' FROM ORDS JOIN ORDPART ON ORDS.ORDNO = ORDPART.ORDNO GROUP BY ORDS.ORDNO, ORDDTE HAVING SUM(QTY*QUOTEPRICE) >= (SELECT SUM(QTY*QUOTEPRICE) FROM ORDPART WHERE ORDNO = 3) AND ORDS.ORDNO != 60;
--12b-SELECT ENAME 'Employee Name', JOB 'Job', SAL 'Salary', D.Total 'Total Salary for The Department' FROM EMP JOIN (SELECT DEPTNO, SUM(SAL) 'Total' FROM EMP GROUP BY DEPTNO)D ON EMP.DEPTNO = D.DEPTNO;