Working With Columns, Characters, and Rows

Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

Working with Columns, Characters, and Rows

Copyright 2011, Oracle. All rights reserved.

Working with Columns, Characters, and Rows

What Will I Learn?


Objectives In this lesson, you will learn to: Apply the concatenation operator to link columns to other columns, arithmetic expressions, or constant values to create a character expression Use column aliases to rename columns in the query result Enter literal values of type character, number, or date into a SELECT statement Define and use DISTINCT to eliminate duplicate rows Edit, execute, and save SQL statements in Oracle Application Express

Copyright 2010, Oracle. All rights reserved.

Working with Columns, Characters, and Rows

Why Learn It?


Purpose If you were writing an article about the Olympics, you might want to know how many different countries and how many different athletes from each country were being represented. Having to go through lists and lists of participant names could be very tedious. Fortunately, using SQL, your job could take less than a minute. In addition, you could format your output to read like a sentence. You will find these SQL features very useful.

Copyright 2010, Oracle. All rights reserved.

Working with Columns, Characters, and Rows

Tell Me / Show Me
DESCRIBE Use the DESCRIBE (DESC) command to display the structure of a table. DESCRIBE <table_name>; DESC returns the table name, table schema, tablespace name, indexes, triggers, constraints, and comments, as well as the data types, primary and foreign keys, and which columns can be nullable.
Table Name Type Length Precisio n Scal e Prima ry Key Nullabl e Defau lt Comments

Copyright 2010, Oracle. All rights reserved.

Working with Columns, Characters, and Rows

Tell Me / Show Me
DESCRIBE (continued) DESC departments;
Table Name Type Length Precision Scale Primary Key Nullable Default Comments

DEPAR TMENT S

DEPARTMENT _ID DEPARTMENT _NAME MANAGER_ID

Number

Primary key column of departments table. A not null column that shows name of a department...

Varchar2

30

Number

Manager_id of a department. Foreign key to employee_id column of employees table... Location id where a department is located. Foreign key to location_id column of locations table.

LOCATION_ID

Number

This is important information when inserting new rows into a table because you must know the type of data each column will accept and whether or not the column can be left empty.
Copyright 2010, Oracle. All rights reserved. 5

Working with Columns, Characters, and Rows

Tell Me / Show Me
The Concatenation Operator Concatenation means to connect or link together in a series. The symbol for concatenation is 2 vertical bars sometimes referred to as pipes. Columns on either side of the || operator are combined to make a single output column. The syntax is: string1 || string2 || string_n When values are concatenated, the resulting value is a character string.

Copyright 2010, Oracle. All rights reserved.

Working with Columns, Characters, and Rows

Tell Me / Show Me
The Concatenation Operator (continued) In SQL, the concatenation operator can link columns to other columns, arithmetic expressions, or constant values to create a character expression. The concatenation operator is used to create readable text output. In the following example, the department_id is concatenated to the department_name. SELECT department_id || department_name FROM departments;
DEPARTMENT_ID||DEPARTMENT_NAME 10Administration 20Marketing 50Shipping 60IT

Copyright 2010, Oracle. All rights reserved.

Working with Columns, Characters, and Rows

Tell Me / Show Me
The Concatenation Operator (continued) In this variation on the previous example, the || ' ' || is used to make a space between the department_id and department_name. The empty set of single quotation marks creates a space between the column values. SELECT department_id || ' FROM departments; ' ||department_name

DEPARTMENT_ID||''||DEPARTMENT_NAME 10 Administration 20 Marketing 50 Shipping 60 IT

Copyright 2010, Oracle. All rights reserved.

Working with Columns, Characters, and Rows

Tell Me / Show Me
Concatenation and Column Aliases Column aliases are useful when using the concatenation operator so that the column heading does not appear as the default SELECT line. SELECT department_id || ' ' || department_name AS " Department Info " FROM departments; SELECT first_name ||' ' || last_name AS "DJs on Demand Clients" FROM d_clients;
Department Info 10 Administration 20 Marketing 50 Shipping 60 IT

DJs on Demand Clients Hiram Peters Serena Jones Lauren Vigil

Copyright 2010, Oracle. All rights reserved.

Working with Columns, Characters, and Rows

Tell Me / Show Me
Concatenation and Literal Values A literal value is a fixed data value such as a character, number, or date. The following are examples of literal values: dollars has a monthly salary of: January 1, 2009 Using concatenation and literal values, you can create output that looks almost like a sentence or statement.

Literal values can be included in the SELECT list with the concatenation operator. Characters and dates must be enclosed in a set of single quotes ' '. Every row returned from a query with literal values will have the same character string in it.

Copyright 2010, Oracle. All rights reserved.

10

Working with Columns, Characters, and Rows

Tell Me / Show Me
Concatenation and Literal Values (continued) In the following example, King earns 24000 dollars a month. The strings, 'has a monthly salary of' and 'dollars. ', are examples of literals. If you were to create a SQL statement to produce output in this format, it would be written as: SELECT last_name ||' has a monthly salary of ' || salary || ' dollars.' AS Pay FROM employees;
PAY King has a monthly salary of 24000 dollars. Kochhar has a monthly salary of 17000 dollars. De Haan has a monthly salary of 17000 dollars. Whalen has a monthly salary of 4400 dollars. Higgins has a monthly salary of 12000 dollars. Gietz has a monthly salary of 8300 dollars.

Note the spacing after and before the single quotes. What happens if you remove the spaces?

Copyright 2010, Oracle. All rights reserved.

11

Working with Columns, Characters, and Rows

Tell Me / Show Me
Concatenation and Literal Values (continued) You can also include numbers as literal values. In the following example, the number 1 is concatenated to the strings, ' has a ' and ' year salary of '. SELECT last_name || ' has a ' || 1 || ' year salary of ' || salary*12 || ' dollars.' AS Pay FROM employees;
PAY King has a 1 year salary of 288000 dollars. Kochhar has a 1 year salary of 204000 dollars. De Haan has a 1 year salary of 204000 dollars. Whalen has a 1 year salary of 52800 dollars. Higgins has a 1 year salary of 144000 dollars.

Copyright 2010, Oracle. All rights reserved.

12

Working with Columns, Characters, and Rows

Tell Me / Show Me
Using DISTINCT to Eliminate Duplicate Rows There are many times when you want to know how many unique instances of something exist. For example, what if you wanted a list of all of the departments for which there are employees? You could write a query to select the department_ids from the employees table: SELECT department_id FROM employees; Note all of the duplicate rows. How can you modify the statement to eliminate the duplicate rows?

DEPARTMENT_ID 90 90 90 10 110 110

80
80 80

Copyright 2010, Oracle. All rights reserved.

13

Working with Columns, Characters, and Rows

Tell Me / Show Me
Using DISTINCT to Eliminate Duplicate Rows (continued) Unless you indicate otherwise, the output of a SQL query will display the results without eliminating duplicate rows. In SQL, the DISTINCT keyword is used to eliminate duplicate rows. SELECT DISTINCT department_id FROM employees;
DEPARTMENT_ID

90 20 110 80 50

10
60

The DISTINCT qualifier affects all listed columns and returns every distinct combination of the columns in the SELECT clause. The keyword DISTINCT must appear directly after the SELECT keyword.
Copyright 2010, Oracle. All rights reserved. 14

Working with Columns, Characters, and Rows

Tell Me / Show Me
EXECUTE, SAVE, and EDIT in Oracle Application Express Now that you have been using Oracle Application Express to create and execute statements, would it not be nice if you could save those statements for later, so you could run them again or perhaps edit them slightly and then save a new copy of the statement? Luckily for you, Oracle Application Express has facilities to do just that. Your teacher will demonstrate these facilities for you, and you can find further information in the Oracle Application Express User Guide.

Copyright 2010, Oracle. All rights reserved.

15

Working with Columns, Characters, and Rows

Summary
Objectives Summarized In this lesson, you have learned to: Apply the concatenation operator to link columns to other columns, arithmetic expressions, or constant values to create a character expression Use column aliases to rename columns in the query result Enter literal values of type character, number, or date into a SELECT statement Define and use DISTINCT to eliminate duplicate rows Edit, execute, and save SQL statements in Oracle Application Express

Copyright 2010, Oracle. All rights reserved.

16

Working with Columns, Characters, and Rows

Summary
Practice Guide The link for the lesson practice guide can be found in the course resources in Section 0.

Copyright 2010, Oracle. All rights reserved.

17

You might also like