What Is SQL?: Weather City State High Low
What Is SQL?: Weather City State High Low
Table Basics
A relational database system contains one or more objects called tables. The
data or information for the database are stored in these tables. Tables are
uniquely identified by their names and are comprised of columns and rows.
Columns contain the column name, data type, and any other attributes for
the column. Rows contain the records or data for the columns. Here is a
sample table called "weather".
city, state, high, and low are the columns. The rows contain the data for this
table:
Weather
city state high low
Phoenix Arizona 105 90
Tucson Arizona 101 92
Flagstaff Arizona 88 69
San Diego California 77 60
New
Albuquerque 80 72
Mexico
Selecting Data
The select statement is used to query the database and retrieve selected
data that match the criteria that you specify. Here is the format of a simple
select statement:
select "column1"
[,"column2",etc]
from "tablename"
[where "condition"];
[] = optional
The column names that follow the select keyword determine which columns
will be returned in the results. You can select as many column names that
you'd like, or you can use a "*" to select all columns.
The table name that follows the keyword from specifies the table that will be
queried to retrieve the desired results.
The where clause (optional) specifies which data values or rows will be
returned or displayed, based on the criteria described after the keyword
where.
= Equal
> Greater than
< Less than
>= Greater than or equal
<= Less than or equal
<> Not equal to
LIK
*See note below
E
The LIKE pattern matching operator can also be used in the conditional
selection of the where clause. Like is a very powerful operator that allows
you to select only rows that are "like" what you specify. The percent sign
"%" can be used as a wild card to match any possible character that might
appear before or after the characters specified. For example:
This SQL statement will match any first names that start with 'Er'. Strings
must be in single quotes.
This statement will match any last names that end in a 's'.
This will only select rows where the first name equals 'Eric' exactly.
1. Display the first name and age for everyone that's in the table.
2. Display the first name, last name, and city for everyone that's not
from Payson.
3. Display all columns for everyone that is over 40 years old.
4. Display the first and last names for everyone whose last name ends in
an "ay".
5. Display all columns for everyone whose first name equals "Mary".
6. Display all columns for everyone whose first name contains "Mary".
2. Display the first name, last name, and city for everyone that's not
from Payson.
4. Display the first and last names for everyone whose last name ends in
an "ay".
5. Display all columns for everyone whose first name equals "Mary".
6. Display all columns for everyone whose first name contains "Mary".
Creating Tables
The create table statement is used to create a new table. Here is the
format of a simple create table statement:
Note: You may have as many columns as you'd like, and the constraints are
optional.
Example:
To create a new table, enter the keywords create table followed by the
table name, followed by an open parenthesis, followed by the first column
name, followed by the data type for that column, followed by any optional
constraints, and followed by a closing parenthesis. It is important to make
sure you use an open parenthesis before the beginning table, and a closing
parenthesis after the end of the last column definition. Make sure you
seperate each column definition with a comma. All SQL statements should
end with a ";".
The table and column names must start with a letter and can be followed by
letters, numbers, or underscores - not to exceed a total of 30 characters in
length. Do not use any SQL reserved keywords as names for tables or
column names (such as "select", "create", "insert", etc).
Data types specify what the type of data can be for that particular column. If
a column called "Last_Name", is to be used to hold names, then that
particular column should have a "varchar" (variable-length character) data
type.
What are constraints? When tables are created, it is common for one or
more columns to have constraints associated with them. A constraint is
basically a rule associated with a column that the data entered into that
column must follow. For example, a "unique" constraint specifies that no two
records can have the same value in a particular column. They must all be
unique. The other two most popular constraints are "not null" which specifies
that a column can't be left blank, and "primary key". A "primary key"
constraint defines a unique identification of each record (or row) in a table.
All of these and more will be covered in the future Advanced release of this
Tutorial. Constraints can be entered in this SQL interpreter, however, they
are not supported in this Intro to SQL tutorial & interpreter. They will be
covered and supported in the future release of the Advanced SQL tutorial -
that is, if "response" is good.
It's now time for you to design and create your own table. You will use this
table throughout the rest of the tutorial. If you decide to change or redesign
the table, you can either drop it and recreate it or you can create a
completely different one. The SQL statement drop will be covered later.
You have just started a new company. It is time to hire some employees.
You will need to create a table that will contain the following information
about your new employees: firstname, lastname, title, age, and salary. After
you create the table, you should receive a small form on the screen with the
appropriate column names. If you are missing any columns, you need to
double check your SQL statement and recreate the table. Once it's created
successfully, go to the "Insert" lesson.
create table
myemployees_ts0211
(firstname varchar(30),
lastname varchar(30),
title varchar(30),
age number(2),
salary number(8,2));
Inserting into a Table
The insert statement is used to insert or add a row of data into the table.
To insert records into a table, enter the key words insert into followed by
the table name, followed by an open parenthesis, followed by a list of
column names separated by commas, followed by a closing parenthesis,
followed by the keyword values, followed by the list of values enclosed in
parenthesis. The values that you enter will be held in the rows and they will
match up with the column names that you specify. Strings should be
enclosed in single quotes, and numbers should not.
In the example below, the column name first will match up with the value
'Luke', and the column name state will match up with the value 'Georgia'.
Example:
Enter these employees into your table first, and then insert at least 5 more
of your own list of employees in the table.
After they're inserted into the table, enter select statements to:
insert into
myemployees_ts0211
(firstname, lastname,
title, age, salary)
values ('Jonie', 'Weber',
'Secretary', 28,
19500.00);
3. Select first and last names for everyone that's under 30 years old.
4. Select first name, last name, and salary for anyone with "Programmer"
in their title.
select firstname, lastname, salary from myemployees_ts0211 where title LIKE '%Programmer%'
5. Select all columns for everyone whose last name contains "ebe".
6. Select the first name for everyone whose first name equals "Potsy".
select firstname from myemployees_ts0211 where firstname = 'Potsy'
8. Select all columns for everyone whose last name ends in "ith".
Updating Records
The update statement is used to update or change records that match a
specified criteria. This is accomplished by carefully constructing a where
clause.
update "tablename"
set "columnname" =
"newvalue"
[,"nextcolumn" =
"newvalue2"...]
where "columnname"
OPERATOR "value"
[and|or "column"
OPERATOR "value"];
[] = optional
[The above example was line wrapped for better viewing on this Web page.]
Examples:
update phone_book
set area_code = 623
where prefix = 979;
update phone_book
set last_name = 'Smith', prefix=555, suffix=9292
where last_name = 'Jones';
update employee
set age = age+1
where first_name='Mary' and last_name='Williams';
1. Jonie Weber just got married to Bob Williams. She has requested that
her last name be updated to Weber-Williams.
2. Dirk Smith's birthday is today, add 1 to his age.
3. All secretaries are now called "Administrative Assistant". Update all
titles accordingly.
4. Everyone that's making under 30000 are to receive a 3500 a year
raise.
5. Everyone that's making over 33500 are to receive a 4500 a year raise.
6. All "Programmer II" titles are now promoted to "Programmer III".
7. All "Programmer" titles are now promoted to "Programmer II".
update
myemployees_ts0211
set lastname=
'Weber-Williams'
where firstname=
'Jonie'
and lastname=
'Weber';
update myemployees_ts0211
set age=age+1
where firstname='Dirk' and lastname='Smith';
update myemployees_ts0211
set title = 'Administrative Assistant'
where title = 'Secretary';
update myemployees_ts0211
set salary = salary + 3500
where salary < 30000;
5. Everyone that's making over 33500 are to receive a 4500 a year raise.
update myemployees_ts0211
set salary = salary + 4500
where salary > 33500;
update myemployees_ts0211
set title = 'Programmer III'
where title = 'Programmer II'
update myemployees_ts0211
set title = 'Programmer II'
where title = 'Programmer'
Deleting Records
The delete statement is used to delete records or rows from the table.
where "columnname"
OPERATOR "value"
[and|or "column"
OPERATOR "value"];
[ ] = optional
[The above example was line wrapped for better viewing on this Web page.]
Examples:
Note: if you leave off the where clause, all records will be deleted!
1. Jonie Weber-Williams just quit, remove her record from the table.
2. It's time for budget cuts. Remove all employees who are making over
70000 dollars.
Create at least two of your own delete statements, and then issue a
command to delete all records from the table.
delete
from myemployees_ts0211
where lastname =
'Weber-Williams';
2. It's time for budget cuts. Remove all employees who are making over
70000 dollars.
delete
from myemployees_ts0211
where salary >
70000;
Drop a Table
The drop table command is used to delete a table and all rows in the table.
To delete an entire table including all of its rows, issue the drop table
command followed by the tablename. drop table is different from deleting
all of the records in the table. Deleting all of the records in the table leaves
the table including column and constraint information. Dropping the table
removes the table definition as well as all of its rows.
Example:
drop table myemployees_ts0211;
Welcome to SQLCourse2.com!
This unique SQL Tutorial is the "sequel" to the highly successful
SQLCourse.com site and will provide you with more advanced easy-to-follow
SQL Instruction and the ability to practice what you learn on-line with
immediate feedback! You will receive immediate results on a web page after
submitting your SQL Commands.
If you're already familar with the basics of SQL, you can still use this as a
refresher, and practice some SQL statements