Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Modern Database Management Test Bank Chapter 7

Download as pdf or txt
Download as pdf or txt
You are on page 1of 37
At a glance
Powered by AI
The document discusses the basics of SQL including SQL statements, database definitions, table definitions, and querying data. It also covers topics such as functions, joins, and views.

The three main components of a SQL statement are the SELECT clause, the FROM clause, and the WHERE clause. The SELECT clause specifies the columns to retrieve, the FROM clause specifies the tables to retrieve data from, and the WHERE clause specifies conditions for row selection.

The WHERE clause filters rows before aggregation, while the HAVING clause filters groups after aggregation. The WHERE clause cannot reference aggregated columns, while the HAVING clause can. The WHERE clause operates on each row, while the HAVING clause operates on groups of aggregated rows.

Chapter 6 Introduction to SQL

1) Which of the following is a purpose of the SQL standard?

A) To specify syntax and semantics of SQL data definition and manipulation


B) To specify minimal and complete standards, which permit different degrees of adoption in products
C) To define the data structures and basic operations for SQL databases
D) All of the above
Answer: D

Diff: 2 Page Ref: 245

Topic: Origins of the SQL Standard

AACSB: Use of Information Technology

2) The benefits of a standardized relational language include:

A) application longevity.
B) reduced training costs.
C) cross-system communication.
D) all of the above.
Answer: D

Diff: 2 Page Ref: 245-246

Topic: Origins of the SQL Standard

AACSB: Use of Information Technology

3) The ________ is the structure that contains descriptions of objects such as tables and views created
by users.

A) SQL
B) schema
C) catalog
D) master view
Answer: B

Diff: 1 Page Ref: 247

Topic: The SQL Environment


AACSB: Analytic Skills, Use of Information Technology

4) ________ is a set of commands used to control a database, which includes security.

A) DML
B) DDL
C) DCL
D) DPL
Answer: C

Diff: 1 Page Ref: 248

Topic: The SQL Environment

AACSB: Use of Information Technology

5) ________ is a set of commands used to update and query a database.

A) DML
B) DDL
C) DCL
D) DPL
Answer: A

Diff: 1 Page Ref: 248

Topic: The SQL Environment

AACSB: Use of Information Technology

6) DDL is typically used during which phases of the development process?

A) Implementation
B) Physical design
C) Analysis
D) All of the above
Answer: B

Diff: 3 Page Ref: 251

Topic: The SQL Environment


AACSB: Analytic Skills, Use of Information Technology

7) The command for creating a database is:

A) create table.
B) create view.
C) create schema.
D) create authorization.
Answer: C

Diff: 2 Page Ref: 251

Topic: Defining a Database in SQL

AACSB: Use of Information Technology

8) The SQL command ________ defines a logical table from one or more tables or views.

A) create table
B) alter table
C) create view
D) create relationship
Answer: C

Diff: 1 Page Ref: 252

Topic: Defining a Database in SQL

AACSB: Use of Information Technology

Subtopic: Generating SQL Database Definitions

9) Any create command may be reversed by using a ________ command.

A) truncate
B) drop
C) delete
D) unpack
Answer: B
Diff: 1 Page Ref: 252

Topic: Defining a Database in SQL

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Generating SQL Database Definitions

10) The first in a series of steps to follow when creating a table is to:

A) identify columns that must be unique.


B) identify each attribute and its characteristics.
C) create an index.
D) identify columns that must be null.
Answer: B

Diff: 2 Page Ref: 252, 253

Topic: Defining a Database in SQL

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Creating Tables

11) The SQL command ________ adds one or more new columns to a table.

A) create table
B) alter table
C) create view
D) create relationship
Answer: B

Diff: 1 Page Ref: 256

Topic: Defining a Database in SQL

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Changing Table Definitions

12) What does the following SQL statement do?


Alter Table Customer_T

Add (Type Varchar (2));

A) Alters the Customer_T table to accept Type 2 Varchars


B) Alters the Customer_T table to be a Type 2 Varchar
C) Alters the Customer_T table, and adds a field called “Type”
D) Alters the Customer_T table by adding a 2-byte field called “Varchar”
Answer: C

Diff: 2 Page Ref: 256

Topic: Defining a Database in SQL

AACSB: Use of Information Technology

Subtopic: Changing Table Definitions

13) What does the following SQL command do?

insert into Customer_T values (001,’John Smith’,’231 West St’,’Boston’,’MA’,’02115′);

A) Adds a new record to the Customer_T


B) Creates the Customer_T table
C) Deletes the Customer_T table
D) Updates the Customer_T table
Answer: A

Diff: 2 Page Ref: 257

Topic: Inserting, Updating, and Deleting Data

AACSB: Analytic Skills

14) Given a table named store with 5 fields: store_id, address, city, state, zipcode, why would the
following insert command not work?
insert into store values (‘234 Park Street’)

A) It would work just fine.


B) You must specify the fields to insert if you are only inserting some of the fields.
C) There is no table keyword.
D) None of the above.
Answer: B

Diff: 2 Page Ref: 258

Topic: Inserting, Updating, and Deleting Data

AACSB: Analytic Skills

15) What does the following SQL statement do?

Delete from Customer_T

where state = ‘HI’;

A) Deletes all records from customer_t where the state is equal to HI


B) Removes the Customer_T table from the database
C) Deletes all records from the Customer_T table
D) None of the above
Answer: A

Diff: 2 Page Ref: 259

Topic: Inserting, Updating, and Deleting Data

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Deleting Database Contents

16) What does the following SQL statement do?


Update Product_T

Set Unit_Price = 775

Where Product_ID = 7

A) Changes the price of a unit called Product_T to 7


B) Changes the unit price of Product 7 to 775
C) Changes the length of the Unit_Price field to 775
D) Updates the Product_T table to have a unit price of 775
Answer: B

Diff: 2 Page Ref: 259

Topic: Inserting, Updating, and Deleting Data

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Updating Database Contents

17) Which of the following is a technique for optimizing the internal performance of the relational data
model?

A) Avoiding indexes on secondary keys


B) Clustering data
C) Not reporting statistics to save machine resources
D) Using random index organizations
Answer: B

Diff: 2 Page Ref: 260

Topic: Internal Schema Definitions in RDBMSs

AACSB: Use of Information Technology

18) Indexes are created in most RDBMSs to:

A) provide a quicker way to store data.


B) decrease the amount of disk space utilized.
C) provide rapid random and sequential access to base-table data.
D) increase the cost of implementation.
Answer: C
Diff: 2 Page Ref: 260

Topic: Internal Schema Definitions in RDBMSs

AACSB: Use of Information Technology

Subtopic: Creating Indexes

19) In an SQL statement, which of the following parts states the conditions for row selection?

A) Select
B) From
C) Where
D) Group By
Answer: C

Diff: 1 Page Ref: 261

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Clauses of the SELECT Statement

20) What does the following SQL statement do?

Select * From Customer Where Cust_Type = “Best”

A) Selects all the fields from the Customer table for each row with a customer labeled “Best”
B) Selects the “*” field from the Customer table for each row with a customer labeled “Best”
C) Selects fields with a “*” in them from the Customer table
D) Selects all the fields from the Customer table for each row with a customer labeled “*”
Answer: A

Diff: 2 Page Ref: 262

Topic: Processing Single Tables


AACSB: Analytic Skills, Use of Information Technology

Subtopic: Clauses of the SELECT Statement

21) What result will the following SQL statement produce?

Select Avg(standard_price) as average from Product_V;

A) The average of all products in Product_V


B) The average Standard_Price of all products in Product_V
C) The average price of all products
D) None of the above
Answer: B

Diff: 2 Page Ref: 265

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Expressions

22) Which of the following questions is answered by the SQL statement?

Select Count (Product_Description) from Product_T;

A) How many products are in the table Product_T?


B) How many products have product descriptions in the Product Table?
C) How many characters are in the field name “Product_Description”?
D) How many different columns named “Product_Description” are there in table Product_T?
Answer: B

Diff: 2 Page Ref: 265

Topic: Processing Single Tables


AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Functions

23) What results will be produced by the following SQL query?

Select sum(standard_price) as Total_Price

from Product_V

where Product_Type = ‘WOOD’;

A) The total price of all products that are of type wood


B) The total price of all products
C) The Standard_Price of the first wood product in the table
D) The Standard_Price of any wood product in the table
Answer: A

Diff: 3 Page Ref: 266

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Expressions

24) Which of the following counts ONLY rows that contain a value?

A) Count
B) Count(*)
C) Tally(*)
D) Checknum
Answer: A

Diff: 2 Page Ref: 266

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Functions


25) Which of the following will produce the minimum of all standard prices?

A) Select standard_price from Product_V where Standard_Price = min;


B) Select min(standard_price) from Product_V;
C) Select Standard_Price from min(Product_V);
D) Select min(Standard_Price) from Product_V where Standard_Price = min(Standard_Price);
Answer: B

Diff: 2 Page Ref: 266

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Functions

26) What will result from the following SQL Select statement?

Select min(Product_Description)

from Product_V;

A) The minimum value of Product_Description will be displayed.


B) An error message will be generated.
C) The first product description alphabetically in Product_V will be shown.
D) None of the above.
Answer: C

Diff: 3 Page Ref: 266

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Functions


27) Which of the following is the wildcard operator in SQL statements?

A) < >
B) *
C) =
D) &
Answer: B

Diff: 1 Page Ref: 267

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Wildcards

28) What result set will the following query return?

Select Item_No

from Order_V

where quantity > 10;

A) The Item_No of all orders that had more than 10 items


B) The Order_Id of all orders that had more than one item
C) The Order_Id of all orders that had more than 10 items
D) The Item_No of all orders that had 10 or more items
Answer: A

Diff: 2 Page Ref: 267

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Comparison Operators

29) What result set will the following query return?


Select Item_No, description

from item

where weight > 100 and weight < 200;

A) The Item_No and description for all items weighing less than 100
B) The Item_No for all items weighing between 101 and 199
C) The Item_No and description for all items weighing between 101 and 199
D) The Item_No for all items weighing more than 200
Answer: C

Diff: 2 Page Ref: 270, 271

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Ranges for Qualification

30) To eliminate duplicate rows in a query, the ________ qualifier is used in the SQL Select command.

A) alter
B) distinct
C) check
D) specific
Answer: B

Diff: 1 Page Ref: 271, 272

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Using Distinct Values

31) What result set is returned from the following query?


Select Customer_Name, telephone

from customers

where city in (‘Boston’,’New York’,’Denver’);

A) The Customer_Name and telephone of all customers


B) The Customer_Name and telephone of all customers living in either Boston, New York or Denver
C) The Customer_Name and telephone of all customers living in Boston and New York and Denver
D) The Customer_Name of all customers living in Boston, New York or Denver
Answer: B

Diff: 2 Page Ref: 273

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: IN and NOT IN with Lists

32) To get all the customers from Hawaii sorted together, which of the following would be used?

A) Order By
B) Group By
C) Having
D) Sort
Answer: A

Diff: 1 Page Ref: 274

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Sorting Results: The ORDER BY Clause

33) A single value returned from an SQL query that includes an aggregate function is called a(n):

A) agate.
B) scalar aggregate.
C) vector aggregate.
D) summation.
Answer: B

Diff: 1 Page Ref: 274

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Categorizing Results: The GROUP BY Clause

34) Multiple values returned from an SQL query that includes an aggregate function are called:

A) vector aggregates.
B) scalar aggregates.
C) agates.
D) summations.
Answer: A

Diff: 1 Page Ref: 274

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Categorizing Results: The GROUP BY Clause

35) Which of the following can produce scalar and vector aggregates?

A) Order By
B) Group By
C) Having
D) Sort
Answer: B

Diff: 2 Page Ref: 274

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Categorizing Results: The GROUP BY Clause


36) What will be returned when the following SQL statement is executed?

Select driver_no,count(*) as num_deliveries

from deliveries

group by driver_no;

A) A listing of all drivers, sorted by driver number


B) A listing of each driver as well as the number of deliveries that he or she has made
C) A count of all of the deliveries made by all drivers
D) None of the above
Answer: B

Diff: 3 Page Ref: 275

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Categorizing Results: The GROUP BY Clause

37) What will be returned when the following SQL statement is executed?

Select driver_no, count(*) as num_deliveries

from deliveries

where state = ‘MA’

group by driver_no;

A) A listing of all drivers who made deliveries to state = ‘MA’, sorted by driver number
B) A listing of each driver who made deliveries to state = ‘MA’ as well as the number of deliveries that
each driver has made to that state
C) A count of all of the deliveries made to state = ‘MA’ by all drivers
D) None of the above
Answer: B

Diff: 3 Page Ref: 275

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Categorizing Results: The GROUP BY Clause

38) Which of the following finds all groups meeting stated conditions?

A) Select
B) Where
C) Having
D) Find
Answer: C

Diff: 1 Page Ref: 276

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Qualifying Results by Categories: The HAVING Clause

39) What will be returned when the following SQL query is executed?

Select driver_no, count(*) as num_deliveries

from deliveries

group by driver_no

having count(*) > 2;

A) A listing of all drivers who made more than 2 deliveries as well as a count of the number of deliveries
B) A listing of all drivers
C) A listing of the number of deliveries greater than 2
D) A listing of all drivers who made more than 2 deliveries
Answer: A

Diff: 3 Page Ref: 276

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Qualifying Results by Categories: The HAVING Clause

40) Which of the following is true of the order in which SQL statements are evaluated?

A) The SELECT clause is always processed first.


B) The SELECT clause is always processed last.
C) The SELECT clause is processed before the ORDER BY clause.
D) The GROUP BY clause is processed before the WHERE clause.
Answer: C

Diff: 3 Page Ref: 277

Topic: Processing Single Tables

AACSB: Use of Information Technology

41) A ________ view is materialized when referenced.

A) virtual
B) dynamic
C) materialized
D) base
Answer: B

Diff: 2 Page Ref: 277

Topic: Using and Defining Views

AACSB: Use of Information Technology

42) A view may not be updated directly if it contains:

A) the DISTINCT keyword.


B) derived columns and expressions in the SELECT clause.
C) uses the GROUP BY or HAVING clause.
D) all of the above.
Answer: D

Diff: 1 Page Ref: 280

Topic: Using and Defining Views

AACSB: Use of Information Technology

43) SQL is both an American and international standard for database access.

Answer: TRUE

Diff: 1 Page Ref: 243

Topic: Introduction

AACSB: Use of Information Technology

44) SQL has been implemented only in the mainframe and midrange environments.

Answer: FALSE

Diff: 1 Page Ref: 244

Topic: Introduction

AACSB: Use of Information Technology

45) SQL originated from a project called System-S.

Answer: FALSE

Diff: 1 Page Ref: 245

Topic: History of the SQL Standard

AACSB: Use of Information Technology

46) One of the original purposes of the SQL standard was to provide a vehicle for portability of database
definition and application modules between conforming DBMSs.
Answer: TRUE

Diff: 1 Page Ref: 245

Topic: Origins of the SQL Standard

AACSB: Use of Information Technology

47) A major benefit of SQL as a standard is reduced training costs.

Answer: TRUE

Diff: 1 Page Ref: 245

Topic: Origins of the SQL Standard

AACSB: Use of Information Technology

48) Implementation of a standard can never stifle creativity and innovation.

Answer: FALSE

Diff: 2 Page Ref: 246

Topic: Origins of the SQL Standard

AACSB: Use of Information Technology

49) Applications can be moved from one machine to another when each machine uses SQL.

Answer: TRUE

Diff: 1 Page Ref: 245

Topic: Origins of the SQL Standard

AACSB: Use of Information Technology

50) A catalog is the structure that contains object descriptions created by a user.

Answer: FALSE
Diff: 1 Page Ref: 247

Topic: The SQL Environment

AACSB: Use of Information Technology

51) Some DBMS can handle graphic data types as well as text and numbers.

Answer: TRUE

Diff: 2 Page Ref: 248

Topic: The SQL Environment

AACSB: Use of Information Technology

52) DCL is used to update the database with new records.

Answer: FALSE

Diff: 1 Page Ref: 248

Topic: The SQL Environment

AACSB: Use of Information Technology

53) A database table is defined using the data definition language (DDL).

Answer: TRUE

Diff: 1 Page Ref: 248

Topic: The SQL Environment

AACSB: Use of Information Technology

54) A database is maintained and queried using the data mapping language (DML).
Answer: FALSE

Diff: 1 Page Ref: 248

Topic: The SQL Environment

AACSB: Use of Information Technology

55) The CREATE SCHEMA DDL command is used to create a table.

Answer: FALSE

Diff: 1 Page Ref: 252

Topic: Defining a Database in SQL

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Generating SQL Database Definitions

56) When creating tables, it’s important to decide which columns will allow null values before the table
is created.

Answer: TRUE

Diff: 1 Page Ref: 252

Topic: Defining a Database in SQL

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Creating Tables

57) When creating a table, it is not important to consider foreign key—primary key mates.

Answer: FALSE

Diff: 1 Page Ref: 253

Topic: Defining a Database in SQL


AACSB: Analytic Skills, Use of Information Technology

Subtopic: Creating Tables

58) A referential integrity constraint specifies that the existence of an attribute in one table depends
upon the existence of a foreign key in the same or another table.

Answer: FALSE

Diff: 2 Page Ref: 255

Topic: Defining a Database in SQL

AACSB: Use of Information Technology

Subtopic: Creating Data Integrity Controls

59) The DELETE TABLE DDL command is used to remove a table from the database.

Answer: FALSE

Diff: 2 Page Ref: 257

Topic: Defining a Database in SQL

AACSB: Use of Information Technology

Subtopic: Removing Tables

60) The ALTER TABLE command is used to change a table definition.

Answer: TRUE

Diff: 1 Page Ref: 256

Topic: Defining a Database in SQL

AACSB: Use of Information Technology

Subtopic: Changing Table Definitions


61) The SQL command used to populate tables is the INSERT command.

Answer: TRUE

Diff: 1 Page Ref: 257

Topic: Inserting, Updating, and Deleting Data

AACSB: Use of Information Technology

62) An insert command does not need to have the fields listed.

Answer: TRUE

Diff: 1 Page Ref: 257

Topic: Inserting, Updating, and Deleting Data

AACSB: Analytic Skills

63) The following command would work fine:

insert into budget values 121,222,111;

Answer: FALSE

Diff: 1 Page Ref: 257

Topic: Inserting, Updating, and Deleting Data

AACSB: Analytic Skills

64) The DROP command deletes rows from a table individually or in groups.

Answer: FALSE

Diff: 1 Page Ref: 259


Topic: Inserting, Updating, and Deleting Data

AACSB: Use of Information Technology

Subtopic: Deleting Database Contents

65) In order to update data in SQL, one must inform the DBMS which relation, columns, and rows are
involved.

Answer: TRUE

Diff: 2 Page Ref: 259

Topic: Inserting, Updating, and Deleting Data

AACSB: Use of Information Technology

Subtopic: Updating Database Contents

66) Indexes generally slow down access speed in most RDMS.

Answer: FALSE

Diff: 2 Page Ref: 260

Topic: Internal Schema Definitions in RDBMSs

AACSB: Use of Information Technology

67) The WHERE clause includes the conditions for row selection within a single table or view and the
conditions between tables or views for joining.

Answer: TRUE

Diff: 1 Page Ref: 261

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Clauses of the SELECT Statement


68) Expressions are mathematical manipulations of data in a table that may be included as part of the
SELECT statement.

Answer: TRUE

Diff: 2 Page Ref: 263, 264

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Expressions

69) Count(*) tallies only those rows that contain a value, while Count counts all rows.

Answer: FALSE

Diff: 2 Page Ref: 265

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Functions

70) The asterisk (*) wildcard designator can be used to select all fields from a table as well as in WHERE
clauses when an exact match is not possible.

Answer: TRUE

Diff: 1 Page Ref: 267

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Wildcards


71) The comparison operators = and != are used to establish a range of values.

Answer: FALSE

Diff: 2 Page Ref: 267

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Using Comparison Operators

72) If multiple Boolean operators are used in an SQL statement, NOT is evaluated first, then AND, then
OR.

Answer: TRUE

Diff: 2 Page Ref: 268

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Boolean Operators

73) The following two SQL statements will produce the same results.

Select last_name, first_name

from customer

where credit_limit > 99 and credit_limit < 10001;

Select last_name, first_name

from customer

where credit_limit between 100 and 10000;

Answer: TRUE
Diff: 2 Page Ref: 270, 271

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using Ranges for Qualification

74) Adding the DISTINCT keyword to a query eliminates duplicates.

Answer: TRUE

Diff: 1 Page Ref: 271, 272

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Using Distinct Values

75) The following two SQL statements will produce different results.

Select last_name, first_name

from customer

where state = ‘MA’ or state = ‘NY’ or state = ‘NJ’ or state = ‘NH’ or state = ‘CT’;

Select last_name, first_name

from customer

where state in (‘MA’,’NY’,’NJ’,’NH’,’CT’);

Answer: FALSE

Diff: 2 Page Ref: 273


Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using IN and NOT IN with Lists

76) The ORDER BY clause sorts the final results rows in ascending or descending order.

Answer: TRUE

Diff: 1 Page Ref: 273, 274

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Sorting Results: The ORDER BY Clause

77) A single value returned from an SQL query that includes an aggregate function is called a vector
aggregate.

Answer: FALSE

Diff: 1 Page Ref: 274

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Categorizing Results: The GROUP BY Clause

78) When a GROUP BY clause is included in an SQL statement, only those columns with a single value for
each group can be included.

Answer: TRUE

Diff: 2 Page Ref: 274, 275

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Categorizing Results: The GROUP BY Clause


79) The HAVING clause and the WHERE clause perform the same operation.

Answer: FALSE

Diff: 2 Page Ref: 276, 277

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Qualifying Results by Categories: The HAVING Clause

80) The following query totals sales for each salesperson.

Select salesperson_id, sum(sales)

from salesperson

group by salesperson_id;

Answer: TRUE

Diff: 2 Page Ref: 276

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Categorizing Results: The GROUP BY Clause

81) The following query totals sales in state= ‘MA’ for each salesperson.

Select salesperson_id, sum(sales)


from salesperson

group by salesperson_id

having state = ‘MA’;

Answer: FALSE

Diff: 3 Page Ref: 276

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Qualifying Results by Categories: The HAVING Clause

82) The ORDER BY clause is the first statement processed in an SQL command.

Answer: FALSE

Diff: 2 Page Ref: 277

Topic: Processing Single Tables

AACSB: Use of Information Technology

83) The WHERE clause is always processed before the GROUP BY clause when both occur in a SELECT
statement.

Answer: TRUE

Diff: 2 Page Ref: 277

Topic: Processing Single Tables

AACSB: Use of Information Technology

84) The FROM clause is the first statement processed in an SQL command.

Answer: TRUE

Diff: 2 Page Ref: 277


Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

85) The content of dynamic views is generated when they are referenced.

Answer: TRUE

Diff: 1 Page Ref: 278

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Using and Defining Views

86) Materialized views are stored on disk and are never refreshed.

Answer: FALSE

Diff: 2 Page Ref: 278, 279

Topic: Processing Single Tables

AACSB: Use of Information Technology

Subtopic: Using and Defining Views

87) The views are created by executing a CREATE VIEW SQL command.

Answer: TRUE

Diff: 1 Page Ref: 279

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using and Defining Views


88) When the SELECT clause in the create view statement contains the keyword DISTINCT, the view can
be used to update data.

Answer: FALSE

Diff: 1 Page Ref: 280

Topic: Processing Single Tables

AACSB: Analytic Skills, Use of Information Technology

Subtopic: Using and Defining Views

89) What were the original purposes of SQL, and does SQL as we know it today live up to those
standards?

Answer: The following were the original purposes of SQL:

To specify the syntax and semantics of SQL data definition and manipulation languages
To define the data structures and basic operations for designing, accessing, maintaining, controlling, and
protecting an SQL database
To provide a vehicle for portability of database definition and application modules between conforming
DBMSs
To specify both minimal (Level 1) and complete (Level 2) standards, which permit different degrees of
adoption in products
To provide an initial standard, although incomplete, that will be enhanced later to include specifications
for handling such topics as referential integrity, transaction management, user-defined functions, join
operators beyond the equi-join, and national character sets

While SQL as we know it today does have some variants, there is a basic standard which is adhered to.
As mentioned in the text, it seems that industry lags behind the standards somewhat. Each vendor has
its own set of proprietary features which differ from the standard.

Diff: 3 Page Ref: 245

Topic: Origins of the SQL Standard

AACSB: Reflective Thinking

90) What are some of the advantages and disadvantages to an SQL standard?
Answer: Some of the advantages are: reduced training costs, increased productivity, application
portability, application longevity, reduced dependence on a single vendor and cross-system
communication. Some disadvantages include: stifling creativity, difficulty in changing standard, and loss
of application portability when adding additional proprietary features.

Diff: 3 Page Ref: 245, 246

Topic: Origins of the SQL Standard

AACSB: Reflective Thinking

91) Explain the three classes of SQL commands and when they would be used.

Answer: There are three classes or types of SQL commands. Data definition language commands are
used to create tables, alter and drop tables, views and indexes. These commands are used to build the
structure of the database as well as some additional objects. The next type is Data Manipulation
Language commands, which are used to maintain and query a database. Commands in this class include
select, update, delete and insert. The last type is the data control language commands, which are used
to grant and revoke privileges on tables and other objects in the database.

Diff: 3 Page Ref: 248

Topic: The SQL Environment

AACSB: Analytic Skills, Reflective Thinking

92) What steps should be followed when preparing to create a table?

Answer: When preparing to create a table, one should:

Identify the appropriate data type and length for each attribute
Identify the columns that should accept null values
Identify that columns that need to be unique
Identify all primary-foreign key mates
Determine default values
Identify any columns for which domain constraints, such as check, need to be stated
Create the table and any indexes using create table and create index statements
Diff: 3 Page Ref: 252, 253

Topic: Defining a Database in SQL

AACSB: Analytic Skills


Subtopic: Creating Tables

93) What three clauses are contained in most SQL retrieval statements?

Answer: The SELECT clause, which lists the columns and calculated expression from base tables. The
FROM clause, which identifies tables and views which we want to gather data from in the query. Finally,
the WHERE clause, which is used to specify conditions for selection of rows in the result set.

Diff: 3 Page Ref: 261

Topic: Processing Single Tables

AACSB: Analytic Skills

Subtopic: Clauses of the SELECT Statement

94) What are some of the standard SQL functions that can be used in the SELECT clause?

Answer: The standard functions can be broken down into 4 categories: Mathematical, String, Date and
Analytical. Mathematical functions include: Min, Max, Count, Sum, Round, Trunc and Mod. String
functions include lower, upper, initcap, concat, substr and coalesce. Date functions are used for
converting dates and calculating dates and include next_day, add_months and months_between. Top
(to find the top n values) is one of the analytical functions.

Diff: 2 Page Ref: 264

Topic: Processing Single Tables

AACSB: Analytic Skills

Subtopic: Using Functions

95) Discuss when to use the GROUP BY clause.

Answer: The GROUP BY clause is useful when you have a set of values for one column (such as a
salesperson ID) and you would like to then calculate something like total sales for each salesperson.
Rather than having to use the sum function with one salesperson’s ID in the WHERE clause (and run
multiple queries) you can use the GROUP BY to get the same results in one query.

Diff: 2 Page Ref: 275, 276

Topic: Processing Single Tables


AACSB: Analytic Skills

Subtopic: Categorizing Results: The GROUP BY Clause

96) How is the HAVING clause different from the WHERE clause?

Answer: While the WHERE clause works on each row in a query resultset, the HAVING clause works on
the aggregate (or combined) rows in a GROUP BY. WHERE does not allow aggregates while the HAVING
does allow aggregates. For example, if you had the following query:

select customer_id, sum(purchase_price*quantity)

from customer

where sum(purchase_price*quantity) > 100

this would not work. However, with a GROUP BY and HAVING written as follows we would get back all
customers whose total purchases were greater than $100

select customer_id, sum(purchase_price*quantity)

from customer

group by customer_id

having sum(purchase_price*quantity) > 100

Diff: 3 Page Ref: 276

Topic: Processing Single Tables

AACSB: Analytic Skills, Reflective Thinking

Subtopic: Qualifying Results by Categories: The HAVING Clause

97) Discuss the pros and cons of using dynamic views.


Answer: A dynamic view is useful, since it provides a way to access part of a table or a combination of
columns from multiple tables. A view can simplify query commands, since much of the complicated
syntax of a query can be done to create the view. A view can also improve programmer productivity,
since programmers can access views rather than have to rewrite the SQL commands for a query.
Security is increased, since users can only see what the view presents. Also, views use little or no storage
space. On the downside, views use processing time each time that the view is recreated for reference.
Also, the views may or may not be recreatable.

Diff: 3 Page Ref: 278

Topic: Using and Defining Views

AACSB: Analytic Skills, Reflective Thinking

98) What is a materialized view, and when would it be used?

Answer: Materialized views are just like dynamic views, except that an actual copy of the data is kept.
With a dynamic view, the SQL is stored on the server and executed when the view is referenced. A
materialized view, on the other hand, keeps a copy of the actual data. This increases performance and is
particularly useful if the data are relatively static and the number of queries against the view are high.

Diff: 3 Page Ref: 281

Topic: Using and Defining Views

AACSB: Analytic Skills

Subtopic: Materialized Views

You might also like