Presentation is loading. Please wait.

Presentation is loading. Please wait.

SQL. Query SELECTList_Of_Attributes FROM List_Of_Tables [WHERECondition] [ORDER BY List_Of_Ordering_Attributes ] [GROUP BY List_Of_Grouping_Attributes.

Similar presentations


Presentation on theme: "SQL. Query SELECTList_Of_Attributes FROM List_Of_Tables [WHERECondition] [ORDER BY List_Of_Ordering_Attributes ] [GROUP BY List_Of_Grouping_Attributes."— Presentation transcript:

1 SQL

2 Query SELECTList_Of_Attributes FROM List_Of_Tables [WHERECondition] [ORDER BY List_Of_Ordering_Attributes ] [GROUP BY List_Of_Grouping_Attributes [HAVING Condition]] [ UNION | INTERSECT | EXCEPT SELECT … ]; [ … ] - Optional

3 Components List_Of_Attributes: a list of –attribute name (e.g. maker) –attribute name AS new_name [for renaming] –aggregation expression (e.g SUM(price)) –arithmetic expression (e.g. price*2) which are separated by comma (* stands for ALL). List_Of_Tables: a (separated by comma) list of relation names (or table names) (e.g. product, PC) Condition: a Boolean expression built using –attribute names and –logical operators: AND, OR, NOT –arithmetic operators (+,-,*,/) on numeric valued attributes –comparison operators (>, =,<=) or special comparison operator (e.g. LIKE) for strings NOTE: Needs to pay attention to operations involving NULL values

4 NULL value and UNKNOWN NULL: indicate unknown value (the price is unknown, the birthdate is unknown, etc.) Arithmetic operations with NULL as one of the arguments yield NULL result, e.g., –50 + NULL gives NULL –10 * NULL gives NULL Boolean operations with NULL might yield UNKNOWN truth: see table on three- valued logic in the book (table 6.2)

5 Example – Projection/Selection select * from product  maker,model,type (product) select maker from product  maker (product) select model from pc  model (pc) select model from pc where speed>=200 and price < 2500  model (  speed>=200 and price < 2500 (pc)) select model from pc where cd like ’8%’  model (  ‘8’ OCCURS_IN cd (pc)) select model, speed, ram, hd from pc where price<2500 order by speed, ram  model, speed,ram,hd (  price<2500 (pc))[ORDER ?] select model, speed as megahertz, ram, hd as gigabytes from pc where price<2500 order by speed, ram 

6 Example – Join, Union, Intersection, Difference select maker, speed from product, laptop where product.model=laptop.model and hd>=‘0.3’  maker, spped(  hd>=0.3 (product JOIN laptop)) select product.model, price from pc,product where maker=’B’ and product.model=pc.model  model, price aker, (  maker=‘B’ (product JOIN laptop)) select product.model,price from pc,product where maker='B' and product.model=pc.model union select product.model,price from laptop,product where maker='B' and product.model = laptop.model union select product.model, price from printer, product where maker='B' and printer.model=product.model select maker from pc,product where product.model=pc.model intersect select maker from laptop,product where product.model=laptop.model select maker from pc,product where product.model=pc.model except select maker from laptop,product where product.model=laptop.model

7 Example - Subqueries select maker from product, pc where product.model=pc.model select distinct maker from product, pc where product.model=pc.model select maker from product where product.model IN (select model from pc) select distinct maker from product where product.model IN (select model from pc) select model from printer where printer.price = (select max(price) from printer)


Download ppt "SQL. Query SELECTList_Of_Attributes FROM List_Of_Tables [WHERECondition] [ORDER BY List_Of_Ordering_Attributes ] [GROUP BY List_Of_Grouping_Attributes."

Similar presentations


Ads by Google