In this section I'll show how the calculus notation can be used to formulate queries, using examples from Chapter 5. Again, please note that the formulations shown aren't the only ones possible, in general. - Example 1
Get suppliers in Paris. s WHERE s.CITY = 'Paris' - Example 2
Get suppliers who supply at least one part. s WHERE EXISTS sp ( sp.SNO = s.SNO ) - Example 3
Get all supplier name/status/city combinations. s.SNAME, s.STATUS, s.CITY We could harmlessly add WHERE TRUE to the foregoing formulation. - Example 4
Get the join of suppliers and shipments. s, sp.PNO, sp.QTY WHERE s.SNO = sp.SNO - Example 5
Get the union of supplier cities and part cities. u RANGES OVER { s.CITY, p.CITY } u Bound variable u is defined to range over the union of supplier cities and part cities. - Example 6
Get suppliers who supply no parts at all. s WHERE NOT ( EXISTS sp ( sp.SNO = s.SNO ) ) - Example 7
Get parts with their weight in grams. p, ( p.WEIGHT * 454 ) AS GMWT - Example 8
For each supplier, get the supplier number and a count of the number of parts that supplier supplies. s.SNO, COUNT ( sp WHERE sp.PNO = s.SNO ) AS P_COUNT |