ordena en forma ascendente todas las fi las por apellido paterno, y después por nombre de pila. Si varias fi las tienen 
el mismo valor de apellido paterno, se devuelven ordenadas por nombre de pila (fi gura 25.17).

Las cláusulas 

WHERE

ORDERBY

pueden combinarse en una consulta. Por ejemplo, la consulta:

SELECT

 isbn, titulo, numeroEdicion, copyright, precio

FROM

 titulos

WHERE

 titulo 

LIKE

 '%How to Program'

ORDER BY

 titulo 

ASC

devuelve el 

isbn

titulo

numeroEdicion

copyright

 y 

precio

 de cada libro en la tabla 

titulos

que tenga 

un 

titulo

 que termine con 

"How

 

to

 

Program"

 y los ordena en forma ascendente, por 

titulo

. El resultado de la 

consulta se muestra en la fi gura 25.18.

Figura 25.17

  |  Datos de ejemplo de autores de la tabla 

autores

 ordenados de manera 

ascendente, por las columnas 

apellidoPaterno

y

nombrePila

.

idAutor

nombrePila

apellidoPaterno

4

David

Choff ner

1

Harvey

Deitel

2

Paul

Deitel

3

Andrew

Goldberg

Figura 25.18

  |  Ejemplos de libros de la tabla 

titulos

 cuyos títulos terminan con 

HowtoProgram

,

y están ordenados en forma ascendente por medio de la columna 

titulo

.

isbn

titulo

numeroEdicion

copyright

0132404168

C How to Program

5

2007

0131857576

C++ How to Program

5

2005

0131450913

Internet & World Wide Web How to Program

3

2004

0132222205

Java How to Program

7

2007

0131869000

Visual Basic 2005 How to Program

3

2006

013152539

Visual C# How to Program

2

2006

25.4.4 Cómo fusionar datos de varias tablas: 

INNERJOIN

Los diseñadores de bases de datos a menudo dividen los datos en tablas separadas para asegurarse de no guardar 
información redundante. Por ejemplo, la base de datos 

libros

tiene las tablas 

autores

titulos

. Utilizamos 

una tabla 

isbnAutor

 para almacenar los datos de la relación entre los autores y sus correspondientes títulos. Si 

no separáramos esta información en tablas individuales, tendríamos que incluir la información del autor con cada 
entrada en la tabla 

titulos

. Esto implicaría almacenar información duplicada sobre los autores en la base de 

datos, para quienes hayan escrito varios libros. A menudo es necesario fusionar datos de varias tablas en un solo 
resultado. Este proceso, que se le conoce como unir

 las tablas, se especifi ca mediante un operador 

INNERJOIN

en 

la consulta. Un operador 

INNERJOIN

fusiona las fi las de dos tablas al relacionar los valores en columnas que sean 

comunes para las dos tablas. La forma básica de un 

INNERJOIN

es:

SELECT

nombreDeColumna1

,

nombreDeColumna2

,…

FROM

tabla1

25.4 SQL 

1051

25_MAQ_CAP_25_DEITEL.indd1051

4/19/081:35:45AM