* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download slides Topic slides
Open Database Connectivity wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Clusterpoint wikipedia , lookup
Ingres (database) wikipedia , lookup
Microsoft SQL Server wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Relational algebra wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
SQL Statements: Queries Relational Databases Relational Databases organize the data in tables with rows and columns. This is similar to the organization of spreadsheets. Column STUDENT TABLE Row 111 Smith 112 ElSawa Joe Jane 1 1 113 Chi 114 Monti Jill Jack 3 1 StudentNo. LastName FirstName Status Relational Database Operations. There are three fundamental operations on predefined (already created) tables. Query. Retrieval of data from one or more columns from one or more rows typically based on some condition. Insert. Insert an entire row with all columns into the table. Update. Modification of one or more columns from one or more rows typically based on some condition. Delete. Removal of a row typically based on some condition Language Note! One confusing term in Relational Database usage is update. When used as a general term it means any operation that can modify the state of a table. The means that SQL UPDATE statements, SQL INSERT statements and SQL DELETE statements can be considered as updates (in a general sense). As a results statements that alter pre-defined tables are divided into two categories, queries and updates. Types of Statements. Queries. In SQL these are executed using the SELECT statements. Updates. In SQL these are executed typically using INSERT to add entire rows to a table or UPDATE to modify columns in pre-existing rows in a table or DELETE to delete entire rows from a table. Querying a Database You can retrieve information from a database by executing a query. Queries involve requesting the return of one or all columns for each row that matches a condition. A query returns a result set which is a collection of rows with each row containing only the columns requested by query. The Select Statement A select statement is used to query a database. Select statements typically (but not always) require: Which columns in a table or tables you wish to retrieve. Which tables you will retrieve the information from. Any special conditions you may attach to the query. Select statements must end with a semi-colon. SELECT Statement Columns to Retrieve Select Lastname,Firstname From Student Where Status=1; Table to Query Special Conditions to refine search. SELECT Statement Retrieve all columns Select * From Student; Table to Query No Condition is supplied so columns from ALL rows in Student will be returned…i.e. unconditional query. Special Syntax Notes. Enclose string constants used in comparisons in single quotes not double quotes. Select * from tablename where sfield=‘Fred’; Numeric constants do not need quotes. Select * from tablename where numfield=27; Simple Queries/No Conditions STUDENT TABLE Select LastName,FirstName from Student; 111 Smith 112 ElSawa Joe Jane 1 1 113 Chi 114 Monti Jill Jack 3 1 StudentNo. LastName 4 Two-Column Rows in the Result Set FirstName Smith ElSawa Joe Jane Chi Monti Jill Jack LastName FirstName Status Simple Queries w/Conditions STUDENT TABLE Select LastName,Status 111 Smith Joe 1 from Student 112 ElSawa 113 Chi 114 Monti Jane Jill Jack 1 3 1 Where Status=1 ; StudentNo. LastName 3 Two-Column Rows in the Result Set FirstName Smith 1 ElSawa 1 Monti 1 LastName Status Status Simple Queries w/ Compound Condition STUDENT TABLE Select LastName,Status 111 Smith Joe 1 from Student 112 ElSawa 113 Chi 114 Monti Jane Jill Jack 1 3 1 Where Status=2; StudentNo. LastName No rows returned that satisfy condition. FirstName NULL SET LastName Status Status Conditional Operations -Conventional Expression Evaluation A=B True if A equals B A != B True if A does not equal B A <= B True if A is less than or equal to B A>B True if A is greater than or equal to B A<B True if A is less than B A>B True if A is greater than B Conditional Operations - Special Expression Evaluation A <=> B True if A is equal to B (NULL Safe) A IS NULL True if A is NULL A IS NOT NULL True if A is not NULL A BETWEEN M AND N True if A is between values M and N A NOT BETWEEN M AND N True if A is not between values M and N A IN(value, value2, ...) True if A is one of the listed values A NOT IN (value, value2, ...) True if A is not one of the listed values Compound Operators. And returns row only if both conditions in compound statement are true. Or returns row if either condition in compound statement is true. You can negate (NOT) a compound condition by enclosing the condition in parentheses. Simple Queries w/ Compound Condition STUDENT TABLE Select LastName,Status from Student Where Status=1 And FirstName=‘Jane’ ; 111 Smith Joe 1 112 ElSawa 113 Chi 114 Monti Jane Jill Jack 1 3 1 StudentNo. LastName 1 Two-Column Row in the Result Set ElSawa LastName FirstName 1 Status Status Simple Queries w/Conditions STUDENT TABLE Select LastName,Status 111 Smith Joe 1 from Student 112 ElSawa 113 Chi 114 Monti Jane Jill Jack 1 3 1 Where Status=3 Or FirstName=‘Jane’ ; StudentNo. LastName 2 Two-Column Rows in the Result Set FirstName ElSawa 1 Chi 3 LastName Status Status Simple Queries w/ Compound Condition STUDENT TABLE Select LastName,Status 111 Smith Joe 1 from Student 112 ElSawa 113 Chi 114 Monti Jane Jill Jack 1 3 1 Where Status=1 And FirstName=‘Jill’ ; No rows returned that satisfy condition. NULL SET LastName Status