+ All Categories
Home > Documents > Different SQL Queries

Different SQL Queries

Date post: 18-Aug-2015
Category:
Upload: swapnil4umatters
View: 327 times
Download: 7 times
Share this document with a friend
Description:
Sql queries with correlated
26
pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API SQL Playbook All the queries in the SQL Playbook reference are available for copying AND pasting so that you can run them without needing to retype. 1. A slow full toss Find the names of employees in the Marketing department. SELECT empfname FROM qemp WHERE deptname = 'Marketing'; 2. Skinning a cat Find the items sold by a department on the second floor. 2.1 Join SELECT DISTINCT itemname FROM qsale, qdept WHERE qdept.deptname = qsale.deptname AND deptfloor = 2; Home Exercises Skill builders Slide exercises Support Instructor
Transcript

pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API SQL PlaybookAll the queries in the SQL Playbook reference are available for copying AND pasting so that you can run themwithout needing to retype.1. A slow full tossFind the names of employees in the Marketing department.SELECT empfname FROM qemp WHERE deptname = 'Marketing';2. Skinning a catFind the items sold by a department on the second floor.2.1 JoinSELECT DISTINCT itemname FROM qsale, qdeptWHERE qdept.deptname = qsale.deptnameAND deptfloor = 2;Home Exercises Skill builders Slide exercises SupportInstructorpdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API2.2 InSELECT DISTINCT itemname FROM qsale WHERE deptname IN (SELECT deptname FROM qdept WHERE deptfloor = 2);2.3 Correlated subquerySELECT DISTINCT itemname FROM qsale WHERE deptname IN (SELECT deptname FROM qdept WHERE qdept.deptname = qsale.deptname AND deptfloor = 2);2.4 ExistsSELECT DISTINCT itemname FROM qsale WHERE EXISTS (SELECT * FROM qdept WHERE qsale.deptname = qdept.deptname AND deptfloor = 2);3. Another full tossFind the names of items sold on floors other than the second floor.SELECT DISTINCT itemname FROM qsale, qdeptWHERE qsale.deptname = qdept.deptnameAND deptfloor < > 2;4. Subtracting from allpdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIFind the items sold by no department on the second floor.SELECT DISTINCT itemname FROM qsaleWHERE itemname NOT IN(SELECT DISTINCT itemname FROM qsale, qdeptWHERE qsale.deptname = qdept.deptnameAND deptfloor = 2);5. DividingFind the items sold by all departments on the second floor.SELECT DISTINCT itemname FROM qitemWHERE NOT EXISTS(SELECT * FROM qdept WHERE deptfloor = 2AND NOT EXISTS(SELECT * FROM qsaleWHERE qsale.itemname = qitem.itemnameAND qsale.deptname = qdept.deptname));SELECT qsale.itemname FROM qsale, qdeptWHERE qsale.deptname = qdept.deptnameAND qdept.deptfloor = 2GROUP BY qsale.itemnameHAVING count(distinct qdept.deptname) =(SELECT count(distinct deptname)from qdept WHERE deptfloor = 2);6. At least some numberpdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIFind the items sold by at least two departments on the second floor.SELECT itemname FROM qsale, qdeptWHERE qsale.deptname = qdept.deptname AND deptfloor = 2GROUP BY itemnameHAVING COUNT(DISTINCT qdept.deptname) > 1;7. A friendly IN for an SQL travelerFind the salary of Clare's manager.SELECT empfname, empsalary FROM qempWHERE empno IN(SELECT bossno FROM qemp WHERE empfname = 'Clare');8. Joining a table with itselfFind numbers AND names of those employees who make more than their manager.SELECT wrk.empno, wrk.empfname FROM qemp wrk, qemp bossWHERE wrk.bossno = boss.empnoAND boss.empsalary < wrk.empsalary;9. A combination of subtract from all AND a self-joinFind the departments WHERE all the employees earn less than their manager.SELECT DISTINCT deptname FROM qempWHERE deptname < >'Management'AND deptname NOT IN(SELECT wrk.deptname FROM qemp wrk, qemp bosspdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIWHERE wrk.bossno = boss.empnoAND wrk.empsalary > = boss.empsalary);10. Self-join with GROUP BYCount the number of direct employees of each manager.SELECT boss.empno, boss.empfname, COUNT(*)FROM qemp wrk, qemp bossWHERE wrk.bossno = boss.empnoGROUP BY boss.empno, boss.empfname;11. A self-join with two matching conditionsFind the names of employees who are in the same department as their manager (as an employee). Reportthe name of the employee, the department, AND the boss's name.SELECT wrk.empfname, wrk.deptname, boss.empfnameFROM qemp wrk, qemp bossWHERE wrk.bossno = boss.empnoAND wrk.deptname = boss.deptname;12. Averaging with GROUP BYList the departments having an average salary over $25,000.SELECT deptname, AVG(empsalary) FROM qempGROUP BY deptnameHAVING AVG(empsalary) > 25000;13. Inner query GROUP BY AND HAVINGpdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIList the departments WHERE the average salary of the employees of each manager is more than $25,000.SELECT wrk.deptname, AVG(wrk.empsalary)FROM qemp wrkWHERE wrk.empno NOT IN(SELECT qdept.empno FROM qdeptWHERE wrk.empno = qdept.empnoAND wrk.deptname = qdept.deptname)GROUP BY wrk.deptnameHAVING AVG(wrk.empsalary) > 25000;14. An IN with GROUP BY AND COUNTList the name AND salary of the managers with more than two employees.SELECT empfname, empsalary FROM qempWHERE empno IN(SELECT bossno FROM qemGROUP BY bossno HAVING COUNT(*) > 2);15. A self-join with some conditionsList the name, salary, AND manager of the employees of the Marketing department who have a salary over$25,000.SELECT wrk.empfname, wrk.empsalary, boss.empfnameFROM qemp wrk, qemp bossWHERE wrk.bossno = boss.empnoAND wrk.deptname = 'Marketing'AND wrk.empsalary > 25000;pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API16. Making comparisonsList the names of the employees who earn more than any employee in the Marketing department.SELECT empfname, empsalary FROM qempWHERE empsalary >(SELECT MAX(empsalary) FROM qempWHERE deptname = 'Marketing');17. An IN with GROUP BY AND SUMAmong all the departments with total salary greater than $25,000, find the departments that sell Stetsons.18. A double divide!List the items delivered by every supplier that delivers all items of type N.SELECT DISTINCT itemname FROM qdel del WHERE NOT EXISTS(SELECT * FROM qsplWHERE NOT EXISTS(SELECT * FROM qitem WHERE itemtype = 'N'AND NOT EXISTS(SELECT * FROM qdelWHERE qdel.itemname = qitem.itemname AND qdel.splno = qspl.splno))AND NOT EXISTS(SELECT * FROM qdel WHERE qdel.itemname = del.itemnameAND qdel.splno = qspl.splno));pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API19. A slam dunkFind the suppliers that deliver compasses.SELECT DISTINCT qspl.splno, splname FROM qspl, qdelWHERE qspl.splno = qdel.splno AND itemname = 'Compass';20. A 6-inch putt for a birdieFind the suppliers that do not deliver compasses.SELECT splno, splname FROM qsplWHERE splno NOT IN(SELECT splno FROM qdel WHERE itemname = 'Compass');21. Making the countFind the suppliers that deliver both compasses AND an item other than compasses.SELECT DISTINCT qdel.splno, splname FROM qspl, qdelWHERE qdel.splno = qspl.splnoAND itemname < > 'Compass'AND qdel.splno IN(SELECT splno FROM qdel WHERE itemname = 'Compass');SELECT DISTINCT qdel.splno, splname FROM qspl, qdelWHERE qdel.splno = qspl.splnoAND qdel.splno IN(SELECT splno FROM qdel WHERE itemname = 'Compass')GROUP BY qdel.splno, splname HAVING COUNT(DISTINCT itemname) > 1;pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API22. Minus AND divideList the departments that have not recorded a sale for all the items oftype N.SELECT deptname FROM qdept WHERE deptname NOT IN(SELECT deptname FROM qdeptWHERE NOT EXISTS(SELECT * FROM qitem WHERE itemtype = 'N'AND NOT EXISTS(SELECT * FROM qsaleWHERE qsale.deptname = qdept.deptname ANDqsale.itemname = qitem.itemname)));23. Division with copiesList the departments that have at least one sale of all the items delivered to them.SELECT DISTINCT deptname FROM qdel del1WHERE NOT EXISTS(SELECT * FROM qdel del2WHERE del2.deptname = del1.deptnameAND NOT EXISTS(SELECT * FROM qsaleWHERE del2.itemname = qsale.itemnameAND del1.deptname = qsale.deptname));SELECT DISTINCT deptname FROM qdel del1WHERE NOT EXISTS(SELECT * FROM qdel del2WHERE del2.deptname = del1.deptnamepdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIAND itemname NOT IN(SELECT itemname FROM qsale

WHERE deptname = del1.deptname));24. A difficult pairingList the supplier-department pairs WHERE the department sells all items delivered to it by the supplier.SELECT splname, deptname FROM qdel del1, qsplWHERE del1.splno = qspl.splnoAND NOT EXISTS(SELECT * FROM qdelWHERE qdel.deptname = del1.deptnameAND qdel.splno = del1.splnoAND itemname NOT IN(SELECT itemname FROM qsaleWHERE qsale.deptname = del1.deptname));25. Two divides AND an intersectionList the items delivered to all departments by all suppliers.SELECT itemname FROM qitemWHERE NOT EXISTS(SELECT * FROM qsplWHERE NOT EXISTS(SELECT * FROM qdelWHERE qdel.itemname = qitem.itemnameAND qdel.splno = qspl.splno))pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIAND NOT EXISTS(SELECT * FROM qdept WHERE deptnameNOT IN ('Management', 'Marketing', 'Personnel','Accounting', 'Purchasing')AND NOT EXISTS(SELECT * FROM qdelWHERE qdel.itemname = qitem.itemnameAND qdel.deptname = qdept.deptname));26. A divide with a matching conditionList the items sold only by departments that sell all the items delivered to them.SELECT DISTINCT itemname FROM qsale saleWHERE deptname IN(SELECT deptname FROM qdept dept1WHERE NOT EXISTS(SELECT * FROM qdelWHERE qdel.deptname = dept1.deptnameAND itemname NOT IN(SELECT itemname FROM qsaleWHERE qsale.deptname = dept1.deptname)))AND NOT EXISTS(SELECT * FROM qsaleWHERE itemname = sale.itemnameAND deptname NOT IN(SELECT deptname FROM qdept dept2WHERE NOT EXISTS(SELECT * FROM qdelWHERE qdel.deptname = dept2.deptnameAND itemname NOT INpdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API(SELECT itemname FROM qsaleWHERE qsale.deptname = dept2.deptname))));27. Restricted divideWho are the suppliers that deliver all the items of type N?SELECT splno, splname FROM qsplWHERE NOT EXISTS(SELECT * FROM qitem WHERE itemtype = 'N'AND NOT EXISTS(SELECT * FROM qdelWHERE qdel.splno = qspl.splnoAND qdel.itemname = qitem.itemname));28. A NOT IN variation on divideList the suppliers that deliver only the items sold by the Books department.SELECT splname FROM qsplWHERE splno IN (SELECT splno FROM qdel)AND NOT EXISTS(SELECT * FROM qdelWHERE qdel.splno = qspl.splnoAND itemname NOT IN(SELECT itemname FROM qsaleWHERE deptname = 'Books'));29. All AND onlypdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIList the suppliers that deliver all AND only the items sold by the Equipment department.SELECT splname FROM qsplWHERE NOT EXISTS(SELECT * FROM qsaleWHERE deptname = 'Equipment'AND itemname NOT IN(SELECT itemname FROM qdelWHERE qdel.splno = qspl.splno))AND NOT EXISTS(SELECT * FROM qdelWHERE qdel.splno = qspl.splnoAND itemname NOT IN(SELECT itemname FROM qsaleWHERE deptname = 'Equipment'));30. Divide with an extra conditionList the suppliers that deliver every item of type C to the same department on the second floor.SELECT splname FROM qsplWHERE EXISTS (SELECT * FROM qdeptWHERE deptfloor = 2AND NOT EXISTS (SELECT * FROM qitemWHERE itemtype = 'C'AND NOT EXISTS (SELECT * FROM qdelWHERE qdel.splno = qspl.splnoAND qdel.itemname = qitem.itemnameAND qdel.deptname = qdept.deptname)));pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API31. At least some COUNTList the suppliers that deliver at least two items of type N to departments.SELECT qspl.splno, splname FROM qdel, qspl, qitemWHERE itemtype = 'n'AND qdel.splno = qspl.splnoAND qdel.itemname = qitem.itemnameGROUP BY qspl.splno, splnameHAVING COUNT(DISTINCT qdel.itemname) > 1;32. Double divide with a restrictionList the suppliers that deliver all the items of type B to departments on the second floor who sell all theitems of type R.CREATE VIEW v32 AS(SELECT deptname FROM qdeptWHERE deptfloor = 2AND NOT EXISTS (SELECT * FROM qitemWHERE itemtype = 'R'AND NOT EXISTS (SELECT * FROM qsaleWHERE qsale.itemname = qitem.itemnameAND qsale.deptname = qdept.deptname)));SELECT splname FROM qsplWHERE NOT EXISTS (SELECT * FROM qitemWHERE itemtype = 'B'AND NOT EXISTS (SELECT * FROM qdelWHERE qdel.itemname = qitem.itemnamepdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIAND qdel.splno = qspl.splnoAND deptname IN (SELECT deptname FROM v32)));33. Triple divide with an intersectionList the suppliers that deliver all the items of type B to the departments that also sell all the items of typeN.CREATE VIEW v33a AS(SELECT deptname FROM qdeptWHERE NOT EXISTS (SELECT * FROM qitemWHERE itemtype = 'N'AND NOT EXISTS (SELECT * FROM qsaleWHERE qsale.deptname = qdept.deptnameAND qsale.itemname = qitem.itemname)));CREATE VIEW v33b AS (SELECT deptname FROM qdept WHERE NOT EXISTS (SELECT * FROM qitemWHERE itemtype = 'B' AND NOT EXISTS (SELECT * FROM qdel WHERE qdel.deptname = qdept.deptname ANDqdel.itemname = qitem.itemname)));SELECT splname FROM qsplWHERE NOT EXISTS (SELECT * FROM qitemWHERE itemtype = 'B'AND NOT EXISTS (SELECT * FROM qdelWHERE qdel.splno = qspl.splnoAND qdel.itemname = qitem.itemnameAND EXISTS(SELECT * FROM v33aWHERE qdel.deptname = v33a.deptname)AND EXISTSpdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API(SELECT * FROM v33b WHERE qdel.deptname = v33b.deptname)));34. An easy one COUNTList the items delivered by exactly one supplier (i.e., list the items always delivered by the same supplier).SELECT itemname FROM qdelGROUP BY itemname HAVING COUNT(DISTINCT splno) = 1;35. The only oneList the supplier AND the item, WHERE the supplier is the only deliverer of some item.SELECT DISTINCT qspl.splno, splname, itemnameFROM qspl, qdel del1WHERE qspl.splno = del1.splnoAND itemname NOT IN(SELECT itemname FROM qdelWHERE qdel.splno < > del1.splno);36. At least some numberList the suppliers that deliver at least 10 items.SELECT qspl.splno, splname FROM qdel, qsplWHERE qdel.splno = qspl.splnoGROUP BY qspl.splno, splnameHAVING COUNT(DISTINCT qdel.itemname) > = 10;37. A three-table joinpdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIFor each item, give its type, the departments that sell the item, AND the floor location of thesedepartments.SELECT qitem.itemname, itemtype, qdept.deptname, deptfloorFROM qitem, qsale, qdeptWHERE qsale.itemname = qitem.itemnameAND qsale.deptname = qdept.deptname;38. Using NOT IN like NOT EXISTSList the departments for which each item delivered to the department isdelivered to some otherdepartment as well.SELECT DISTINCT deptname FROM qdel del1WHERE NOT EXISTS(SELECT * FROM qdel del2WHERE del2.deptname = del1.deptnameAND itemname NOT IN(SELECT itemname FROM qdel del3WHERE del3.deptname < > del1.deptname));39. Minus after GROUP ByList each item delivered to at least two departments by each supplier that delivers it.SELECT DISTINCT itemname FROM qdelWHERE itemname NOT IN(SELECT itemname FROM qdelGROUP BY itemname, splnoHAVING COUNT(DISTINCT deptname) < 2);pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API40. Something to allList the items that are delivered only by the suppliers that deliver something to all the departments.SELECT DISTINCT itemname FROM qdel del1WHERE NOT EXISTS(SELECT * FROM qdel del2WHERE del2.itemname = del1.itemnameAND splno NOT IN(SELECT splno FROM qdelGROUP BY splno HAVING COUNT(DISTINCT deptname) =(SELECT COUNT(*) FROM qdeptWHERE deptname NOT IN ('Management','Marketing', 'Personnel', 'Accounting', 'Purchasing'))));41. Intersection (AND)List the items delivered by Nepalese Corp. AND sold in the Navigation department.SELECT DISTINCT itemname FROM qitemWHERE itemname IN(SELECT itemname FROM qdel, qsplWHERE qdel.splno = qspl.splnoAND splname = 'Nepalese corp.')AND itemname IN(SELECT itemname FROM qsaleWHERE deptname = 'Navigation');42. Union (OR)pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIList the items delivered by Nepalese Corp. or sold in the Navigation department.SELECT DISTINCT itemname FROM qitemWHERE itemname IN(SELECT itemname FROM qdel, qsplWHERE qdel.splno = qspl.splnoAND splname = 'Nepalese corp.')OR itemname IN(SELECT itemname FROM qsaleWHERE deptname = 'Navigation');43. Intersection/unionList the departments selling items of type E that are delivered by Nepalese Corp. AND/or which are sold bythe Navigation department.SELECT DISTINCT deptname FROM qsaleWHERE itemname IN(SELECT qitem.itemname FROM qitem, qdel, qsplWHERE qitem.itemname = qdel.itemnameAND qdel.splno = qspl.splnoAND splname = 'Nepalese corp.'AND itemtype = 'e')or itemname in(SELECT itemname FROM qsaleWHERE deptname = 'Navigation');44. Averaging with a conditionFind the average salary of the employees in the Clothes department.pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APISELECT AVG(empsalary) FROM qempWHERE deptname = 'clothes';45. Averaging with groupingFind, for each department, the average salary of the employees.SELECT deptname, AVG(empsalary) FROM qempGROUP BY deptname;46. Average with a join, condition, AND groupingFind, for each department on the second floor, the average salary of the employees.SELECT qdept.deptname, AVG(empsalary) FROM qemp, qdeptWHERE qemp.deptname = qdept.deptnameAND deptfloor = 2GROUP BY qdept.deptname;47. Averaging with multiple joinsFind, for each department that sells items of type E, the average salary of the employees.SELECT qdept.deptname, AVG(empsalary)FROM qemp, qdept, qsale, qitemWHERE qemp.deptname = qdept.deptnameAND qdept.deptname = qsale.deptnameAND qsale.itemname = qitem.itemnameAND itemtype = 'E'GROUP BY qdept.deptname;pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF API48. Complex countingWhat are the number of different items delivered by each supplier that delivers to all departments?SELECT splname, COUNT(DISTINCT itemname)FROM qdel del1, qsplWHERE del1.splno = qspl.splnoAND NOT EXISTS(SELECT * FROM qdeptWHERE deptname NOT IN(SELECT deptname FROM qdelWHERE qdel.splno = del1.splno)AND deptname NOT IN('Management', 'Marketing', 'Personnel', 'Accounting', 'Purchasing'))GROUP BY splname;49. Summing with joins AND conditionsFind the total number of items of type E sold by the departments on thesecond floor.SELECT SUM(saleqty) FROM qitem, qsale, qdeptWHERE qitem.itemname = qsale.itemnameAND qdept.deptname = qsale.deptnameAND itemtype = 'E'AND deptfloor = 2;50. Summing with joins, conditions, AND groupingFind, for each item, the total quantity sold by the departments on the second floor.pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APISELECT qitem.itemname, SUM(saleqty) FROM qitem, qsale, qdeptWHERE qitem.itemname = qsale.itemnameAND qdept.deptname = qsale.deptnameAND deptfloor = 2GROUP BY qitem.itemname;51. Advanced summingList suppliers that deliver a total quantity of items of types C AND N that is altogether greater than 100.SELECT qdel.splno, splname FROM qspl, qdel, qitemWHERE qspl.splno = qdel.splnoAND qitem.itemname = qdel.itemnameAND (itemtype = 'C' or itemtype = 'N')GROUP BY qdel.splno, splname HAVING SUM(delqty) > 100;52. Comparing to the average with a joinList the employees in the Accounting department AND the difference between their salaries AND theaverage salary of the department.CREATE VIEW v52(deptname, dpavgsal) ASSELECT deptname, AVG(empsalary) FROM qempGROUP BY deptname;SELECT empfname, (empsalary - dpavgsal) FROM v52, qempWHERE v52.deptname = qemp.deptnameAND qemp.deptname = 'Accounting';53. Comparing to the average with a productpdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIList the employees in the Accounting department AND the difference between their salaries AND theaverage salary of all the departments.CREATE VIEW v53(allavgsal) ASSELECT AVG(empsalary) FROM qemp;SELECT empfname, (empsalary - allavgsal) FROM v53, qempWHERE deptname = 'Accounting';54. Averaging with multiple groupingWhat is, for each supplier, the average number of items per department that the supplier delivers?SELECT qdel.splno, splname, deptname, AVG(delqty)FROM qspl, qdelWHERE qspl.splno = qdel.splnoGROUP BY qdel.splno, splname, deptname;55. More than the average with groupingFor each department, find the average salary of the employees who earn more than the average salary ofthe department.SELECT deptname, AVG(empsalary) FROM qemp outtWHERE empsalary >(SELECT AVG(empsalary) FROM qemp innWHERE outt.deptname = inn.deptname)GROUP BY deptname;56. The simplest averagepdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIGive the overall average of the salaries in all departments.SELECT AVG(empsalary) FROM qemp;SELECT AVG(dpavgsal) FROM v52;57. Difference from the averageList each employee's salary, the average salary within that person's department, AND the differencebetween the employees' salaries AND the average salary of the department.SELECT empfname, empsalary,dpavgsal, (empsalary - dpavgsal)FROM v52, qempWHERE v52.deptname = qemp.deptname;58. Averaging with multiple joins, multiple grouping, AND a conditionWhat is the average delivery quantity of items of type N delivered by each company who delivers them?SELECT qdel.splno, splname, qdel.itemname, AVG(delqty)FROM qdel, qspl, qitemWHERE qdel.splno = qspl.splnoAND qdel.itemname = qitem.itemnameAND itemtype = 'N'GROUP BY qdel.splno, splname, qdel.itemname;59. Detailed averagingWhat is the average delivery quantity of items of type N delivered by each supplier to each department(given that the supplier delivers items of type N to the department)?pdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APISELECT qdel.splno, splname, deptname, qdel.itemname, AVG(delqty)FROM qdel, qspl, qitemWHERE qdel.splno = qspl.splnoAND qdel.itemname = qitem.itemnameAND itemtype = 'N'GROUP BY qdel.splno, splname, deptname, qdel.itemname;60. Counting pairsWhat is the number of supplier-department pairs in which the supplier delivers at least one item of type Eto the department?CREATE VIEW v60 AS(SELECT DISTINCT splno, deptname FROM qdel, qitemWHERE qdel.itemname = qitem.itemnameAND itemtype = 'E' );SELECT COUNT(*) FROM v60;61. No BooleansIs it true that all the departments that sell items of type C are located on the third floor? (The result can bea Boolean 1 or 0, meaning yes or no.)SELECT COUNT(*) FROM qdeptWHERE deptfloor 3AND exists(SELECT * FROM qsale, qitemWHERE qsale.itemname = qitem.itemnameAND qsale.deptname = qdept.deptnamepdfcrowd.com open in browser PRO version Are you a developer? Try out the HTML to PDF APIAND itemtype = 'C');SELECT COUNT(*) FROM qdeptWHERE deptfloor = 3AND EXISTS(SELECT * FROM qsale, qitemWHERE qsale.itemname = qitem.itemnameAND qsale.deptname = qdept.deptname AND itemtype = 'C');This page is part of the promotional and support material for Data Management (sixth edition) byRichard T. Watson For questions and comments please contact the authorDate revi sed: 22-Sep-2013


Recommended