SlideShare a Scribd company logo
Introduction to Structured Query
Language (SQL)
By Techandmate.com
Learn SQL Server With US
Objectives
2
 Explore basic commands and functions of SQL
 How to use SQL for data administration (to create
tables, indexes, and views)
 How to use SQL for data manipulation (to add,
modify, delete, and retrieve data)
 How to use SQL to query a database to extract
useful information
Agenda
 What is SQL ?
 Data Types
 Constraints
 Database Relationships
 SQL Queries
 Transact- SQL Commands | DDL , DCL ,DML
 Retrieving Data
 Customizing Data
 Grouping Data
 SQL Operators
 Joining Data
Agenda continue
 Inserting , Updating and Deleting Data
 Working With Tables
 Working with Views
 Working With Constraints
 Generating Scripts
 Working with Stored Procedures
 Working with Functions
Introduction to SQL
5
 SQL stands for Structured Query Language. SQL is used to
communicate with a database. According to ANSI (American
National Standards Institute), it is the standard language for
relational database management systems
 SQL functions fit into two broad categories:
 Data definition language
 SQL includes commands to:
 Create database objects, such as tables, indexes, and
views
 Define access rights to those database objects
 Data manipulation language
 Includes commands to insert, update, delete, and retrieve
data within database tables
SQL Database Objects
 A SQL Server database has lot of objects like
 Tables
 Views
 Stored Procedures
 Functions
 Rules
 Defaults
 Cursors
 Triggers
SQL Server Data types
 Integer : Stores whole number
 Float : Stores real numbers
 Text : Stores characters
 Decimal: Stores real numbers
 Money : Stores monetary data. Supports 4 places
after decimal
 Date : Stores date and time
 Binary : Stores images and other large objects
 Miscellaneous : Different types special to SQL Server.
 A null value is an unknown
 Null value is not as zero or space.
 every value in a column or set of columns must
be unique.
 When there is not the primary key.
 Example
 no two employees can have the same phone
number
 The primary key value must be unique and not null.
 Multiple UNIQUE constraints and only one Primary
key in a Table .
 FOREIGN KEY in one table points to a PRIMARY
KEY in another table.
 prevents that invalid data form being inserted into the
foreign key column
 used to limit the value range that can be placed in a
column.
 Example :
 A column must only include integers greater than 0
 used to insert a default value into a column
 Create , Alter , Drop , Truncate
 meant to deal with the structure of the database objects (the
object itself) like tables, views, procedures and so on.
 Insert , Delete , Update , SELECT
 deal with the contents of the tables rather than the structure
of the tables
 GRANT , DENY , REVOKE
 maintain security of the database objects access and use
 adding a new database object to the database
 changing the structure of an existing database
object
 removing a database object from the database
permanently
 removing all rows from a table without logging the
individual row deletions
 retrieving data from the database by specifying
which columns and rows to be retrieved
 adding a new row (and not column) into the table
 modifying the existing data in the tabl
 removing an existing data from the table
 giving privileges to the users
 denies permissions from a security account in the
current database and prevents the security account
from inheriting the permission through its group or
role memberships
 removing privileges from the users that are
previously granted those permissions
 Retrieve data from database
SELECT * | column1 [, column2,
…….]
FROM table
SQL Server Learning Drive
 Specify a condition to limit the result
SELECT * | column1 [, column2, …….]
FROM table
[WHERE conditions]
SQL Server Learning Drive
SQL Server Learning Drive
 sort the retrieved rows by a specific column or set of
columns
SELECT * | column1 [, column2, …….]
FROM table
[WHERE conditions]
[ORDER BY column1 [, column2, ……..] ASC,
DESC]
SQL Server Learning Drive
1
2
SQL Server Learning Drive
SQL Server Learning Drive
 eliminates duplicate row values from the results
 Example : the Next Slide
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
 used to divide the rows in a table into smaller
groups
SELECT * | column1, group_function (column2),
…….
FROM table
[WHERE conditions]
[GROUP BY column1, ……..]
[ORDER BY column1 [, column2, ……..] ASC,
DESC]
SQL Server Learning Drive
 used to restrict the group results
SELECT * | column1, group_function (column2),
…….
FROM table
[WHERE conditions]
[GROUP BY column1, ……..]
HAVING [conditions]
[ORDER BY column1 [, column2, ……..] ASC,
DESC]
SQL Server Learning Drive
SQL Server Learning Drive
 Arithmetic operators
 Comparison operators
 Logical operators
 Set Operators
 Other operators
 addition (+)
 subtraction (-)
 multiplication (*)
 division (/).
 compare two or more values
DescriptionOperator
Equal=
Lease than<
Greater than>
Less than or equal<=
Greater than or equal>=
Not Equal<>
SQL Server Learning Drive
• Used to get a logical value (True or
False)
SQL Server Learning Drive
 combine the results of two or more queries into one
result
 UNION/ UNION ALL
 INTERSECT
 EXCEPT
EmpLacation
Egypt
Canada
Egypt
VacLocation
Egypt
Canada
France
Union
Egypt
Canada
France
Intersect
Egypt
Canada
Except
France
• Create a Single Result Set from
Multiple Queries
– Similar data types
– Same number of columns
– Same column order in select list
USE northwind
SELECT (firstname + ' ' + lastname) AS name
,city, postalcode
FROM employees
UNION
SELECT companyname, city, postalcode
FROM customers
GO
 returns only the records that have the same values
in the selected columns in both tables.
USE northwind
SELECT (firstname + ' ' + lastname) AS name
,city, postalcode
FROM employees
INTERSECT
SELECT companyname, city, postalcode
FROM customers
GO
 return rows returned by the first query that are not
present in the second query
USE northwind
SELECT (firstname + ' ' + lastname) AS name
,city, postalcode
FROM employees
EXCEPT
SELECT companyname, city, postalcode
FROM customers
GO
SQL Server Learning Drive
SQL Server Learning Drive
 Example 1 (without an alias name)
 Example 2 (with an alias name)
USE joindb
SELECT buyer_name, s.buyer_id, qty
FROM buyers AS b INNER JOIN sales AS s
ON b.buyer_id = s.buyer_id
GO
USE joindb
SELECT buyer_name, sales.buyer_id, qty
FROM buyers INNER JOIN sales
ON buyers.buyer_id = sales.buyer_id
GO
This slide from 2071b from Microsoft
 Introduction to Joins
 Using Inner Joins
 Using Outer Joins
 Using Cross Joins
 Joining More Than Two Tables
 Joining a Table to Itself
 Selects Specific Columns from Multiple Tables
 JOIN keyword specifies that tables are joined and
how to join them
 ON keyword specifies join condition
 Queries Two or More Tables to Produce a Result
Set
 Use primary and foreign keys as join conditions
 Use columns common to specified tables to join
tables
 return rows only when there is at least one row from
both tables that matches the join condition
SELECT <select list>
FROM table1 inner join table2
ON (table1.column1 = table2.column2)
USE joindb
SELECT buyer_name, sales.buyer_id, qty
FROM buyers INNER JOIN sales
ON buyers.buyer_id = sales.buyer_id
GO
sales
buyer_id prod_id qty
1
1
4
3
2
3
1
5
15
5
37
11
4 2 1003
buyers
buyer_name
Adam Barr
Sean Chai
Eva Corets
Erin O’Melia
buyer_id
1
2
3
4
Result
buyer_name
Adam Barr
Adam Barr
Erin O’Melia
Eva Corets
buyer_id qty
1
1
4
3
15
5
37
11
Erin O’Melia 4 1003
Example 1
 includes all rows in the left table in the results whether or
not there are matching values on the common column in the
right table. in addition to the matching values in Both table.
: All rows from the Left table are returned
SELECT <select list>
FROM table1 left outer join table2
ON (table1.column1 = table2.column2)
USE joindb
SELECT buyer_name, sales.buyer_id, qty
FROM buyers LEFT OUTER JOIN sales
ON buyers.buyer_id = sales.buyer_id
GO
sales
buyer_id prod_id qty
1
1
4
3
2
3
1
5
15
5
37
11
4 2 1003
buyers
buyer_name
Adam Barr
Sean Chai
Eva Corets
Erin O’Melia
buyer_id
1
2
3
4
Result
buyer_name
Adam Barr
Adam Barr
Erin O’Melia
Eva Corets
buyer_id qty
1
1
4
3
15
5
37
11
Erin O’Melia 4 1003
Sean Chai NULL NULL
Example 1
 the reverse of LEFT OUTER joins
 All rows from the right table are returned
 Null values are returned for the left table any time a right
table row has no matching row in the left table.
SELECT <select list>
FROM table1 right outer join table2
ON (table1.column1 =
table2.column2)
 returns all the rows from the left table , and all the
rows from the right table
 Also it returns rows in the left table that do not
have matches in the right table, or if there are
rows in right table that do not have matches in the
left table.
NameID
Some11
Some22
Some33
CountryID
Loc11
Loc22
Loc44
SELECT a.id ,b.id, a.name , b.country
FROM LeftTable as a
Full Join RightTable as b
On a.id = b.id
Full Join
 Join table with it self
SELECT a.column , b.column
FROM Table1 as a
JOIN Table1 as b
ON a.column = b.column
• I want Every Employee Name with his Manager
SQL Server Learning Drive
 return all rows from both tables
 Each row from the left table is combined with all
rows from Second Table
 the number of rows in the left table multiplied by
the number of rows in the right table.
 Table1 >> 2 rows,
 Table2 >> 5 rows,
 >>10 rows
 Example :
 Possible ways
Name
Ali
Islam
Country
Egypt
Cairo
CountryName
EgyptAli
CairoAli
EgyptIslam
CairoIslam
USE joindb
SELECT buyer_name, qty
FROM buyers
CROSS JOIN sales
GO
Result
buyer_name
Adam Barr
Adam Barr
Adam Barr
Adam Barr
qty
15
5
37
11
Adam Barr 1003
Sean Chai 15
Sean Chai 5
Sean Chai 37
Sean Chai 11
Sean Chai 1003
Eva Corets 15
... ...
sales
buyer_id prod_id qty
1
1
4
3
2
3
1
5
15
5
37
11
4 2 1003
buyers
buyer_id
1
2
3
4
buyer_name
Adam Barr
Sean Chai
Eva Corets
Erin O’Melia
Example 1
SQL Server Learning Drive
SQL Server Learning Drive
 is responsible for adding a new row into the
table
INSERT [INTO] table
[column1, column2, ………..]
VALUES (value1, value2, ………….. )
• Inserting Data without columns
name
• Inserting Data with columns name
Note: You can verify the result by write SELECT
statement.
SELECT …… <select_list>
INTO <new_table>
FROM <table_name>
[WHERE <search_condition>]
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
 is responsible for modifying the existing data in the
table
UPDATE <table>
SET column1 = value1 [, column2 = value2, ……]
WHERE [conditions]
SQL Server Learning Drive
 is responsible for removing an existing data from
the table
DELETE <table>
WHERE [conditions]
SQL Server Learning Drive
:
 removes all rows from a table
TRUNCATE Table <table>
 is new statement in SQL Server 2008
 INSERT, UPDATE, and DELETE in a single
statement . Based on Condition
MERGE INTO table_name table_alias
USING (table|view|sub_query) alias
ON (join condition)
WHEN MATCHED THEN
UPDATE SET
col1 = col_val1,
col2 = col2_val
WHEN NOT MATCHED THEN
INSERT (column_list)
VALUES (column_values);
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
 Using User Interface
 create new tables
CREATE TABLE <table_name>
(
column1 datatype ,
column2 datatype ,
...............
(
SQL Server Learning Drive
 Altering an existing table
 Using User Interface
modify existing tables
ALTER TABLE <table_name>
Add colum_name datatype
ALTER TABLE <table_name>
ALTER COLUMN colum_name datatype
ALTER TABLE <table_name>
DROP COLUMN colum_name datatype
SQL Server Learning Drive
 Disallow null , and decrease length
SQL Server Learning Drive
 Dropping an existing table
SQL Server Learning Drive
 drop existing tables
: Don’t forget to Press Refresh
DROP TABLE <table_name>
SQL Server Learning Drive
 is simply a SELECT statement that has been given
a name and stored in a database
 Restricting data access
 Making complex queries easy
CREATE VIEW <view_name>
AS <select_statement>
Create View LondonEmployees
as
SELECT EmloyeeId , LastName , FirstName
,City , Address
FROM Employees
SQL Server Learning Drive
SQL Server Learning Drive
 Any changes to View that may cause a record
disappear from the view , will raises runtime error
.
 Example :
Create view SomeOrders
as
SELECT * FROM Orders where Orders.ShipCity =
'London‘
With Check Option
SQL Server Learning Drive
SQL Server Learning Drive
 Creating tables with constraints
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
 add a new constraint
SQL Server Learning Drive
SQL Server Learning Drive
 Create a new Database >> New Database
 Attach Existing Database >> Attach
 removes the database entry from the instance
 closes all files associated to the database
 releases all operating system locks
 Detaching a database
SQL Server Learning Drive
 Database diagrams graphically show the structure
of the database
1. Select your database from the Databases node
in the Object Explorer.
2. Right-click the Database Diagrams folder.
3. Select the New Database Diagram
:
:
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
 Files with Extension (.sql )
script1.sql
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
:
a sequence of operations performed as a single
logical unit of work.
all of its data modifications are performed or none of
them is performed.
 Autocommit transactions
 The default for SQL Server
 Each individual DML or DDL statement is committed when it
Completes
 You do not have to specify any statements to control
transactions
 Implicit transactions
SET IMPLICIT_TRANSACTIONS ON
Each Transact-SQL statement
(INSERT,UPDATE,DELETE) execute as a
Transaction
 Explicit transactions
Starting with BEGIN TRANSACTION Statement
: The COMMIT statement.
: The ROLLBACK statement .
>> automatically Rollback
 If it prevents the successful completion of a
transaction
>> need to Check @@Error
 constraint violation (Check Constraint )
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
Define a location to which a transaction can return
like save point in any game
SAVE TRANSACTION <savepoint_name>
ROLLBACK TRANSACTION
<savepoint_name>
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
 You Can :
 Contains Statement that Perform Operations
 Accept input Parameters
 Return Status Value
 success or failure
 Return Multiple Output parameters
 They are registered (permanently stored) at the
server.
 They can have security attributes (such as
permissions).
 They can enhance the security of your
application.
 They allow modular programming.
 They are named code and so they allow
repeating execution.
 They can reduce network traffic.
 User-defined stored procedures
 System stored procedures
CREATE PROC | PROCEDURE
<procedure_name>
[@parameter data_type]
AS <sql_statement>
SQL Server Learning Drive
SQL Server Learning Drive
ALTER PROC | PROCEDURE
<procedure_name>
[@parameter data_type]
AS <sql_statement>
DROP PROC | PROCEDURE <procedure_name>
SQL Server Learning Drive
 Like functions in programming languages
 accept parameters
 perform an action
 return the result of that action as a value
 They allow modular programming.
 They allow faster execution.
 They always return a value to the calling program.
 User-defined scalar functions
 Built-in Functions
SQL Server Learning Drive
CREATE FUNCTION <function_name>
[(@parameter data_type)]
RETURNS return_data_type | table
[AS]
BEGIN
function_code
RETURN scalar_expression | select
statement
END
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
 specifies TABLE as a return data type
 returns a SELECT statement rather than a single
value
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
SQL Server Learning Drive
 Using the ALTER FUNCTION statement
ALTER FUNCTION <function_name>
[(@parameter data_type)]
RETURNS return_data_type
[AS]
BEGIN
function_code
RETURN scalar_expression
END
DROP FUNCTION <function_name>
SQL Server Learning Drive
 a special type of stored procedure.
 Invoked automatically
 Not called directly
 DDL triggers
 DML triggers
 They can query other tables and include complex
Transact-SQL statements
 They can reference columns in other tables
 with more complex than check
 override the standard actions
CREATE TRIGGER <trigger_name> on <table
| view>
INSTEAD OF INSERT | UPDATE | DELETE
AS
BEGIN
<trigger_code>
END
 INSTEAD OF INSERT triggers
 INSTEAD OF UPDATE triggers
 INSTEAD OF DELETE triggers
Create a trigger that protects all the data in
the Course table from deletion
SQL Server Learning Drive
:
create trigger that insert new trainee when
inserting new course
SQL Server Learning Drive
SQL Server Learning Drive
 Alter and Drop statements
: Drop trigger
 This is not every thing about Transact-SQL
 This is just an introduction
 May you read :
 2071B Book (Querying MS SQL Server with Transact-SQL )
 2073A Book(Programming MS SQL Server Database)
 MSDN : http://msdn.microsoft.com/en-
us/library/aa299742(v=SQL.80).aspx
 Google
SQL Server Learning Drive
Ad

More Related Content

What's hot (20)

SQL Queries
SQL QueriesSQL Queries
SQL Queries
Nilt1234
 
Aggregate function
Aggregate functionAggregate function
Aggregate function
Rayhan Chowdhury
 
View & index in SQL
View & index in SQLView & index in SQL
View & index in SQL
Swapnali Pawar
 
SQL - DML and DDL Commands
SQL - DML and DDL CommandsSQL - DML and DDL Commands
SQL - DML and DDL Commands
Shrija Madhu
 
Relational model
Relational modelRelational model
Relational model
Dabbal Singh Mahara
 
Joins in SQL
Joins in SQLJoins in SQL
Joins in SQL
Vigneshwaran Sankaran
 
Relational Algebra,Types of join
Relational Algebra,Types of joinRelational Algebra,Types of join
Relational Algebra,Types of join
raj upadhyay
 
Join query
Join queryJoin query
Join query
Waqar Ali
 
SQL
SQLSQL
SQL
Vineeta Garg
 
introdution to SQL and SQL functions
introdution to SQL and SQL functionsintrodution to SQL and SQL functions
introdution to SQL and SQL functions
farwa waqar
 
Set operators
Set  operatorsSet  operators
Set operators
Manuel S. Enverga University Foundation
 
Joins in dbms and types
Joins in dbms and typesJoins in dbms and types
Joins in dbms and types
university of Gujrat, pakistan
 
Triggers in SQL | Edureka
Triggers in SQL | EdurekaTriggers in SQL | Edureka
Triggers in SQL | Edureka
Edureka!
 
Sql commands
Sql commandsSql commands
Sql commands
Prof. Dr. K. Adisesha
 
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with ExamplesDML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
LGS, GBHS&IC, University Of South-Asia, TARA-Technologies
 
SQL JOINS
SQL JOINSSQL JOINS
SQL JOINS
Swapnali Pawar
 
Sql
SqlSql
Sql
Priyank Tewari
 
Sql queries presentation
Sql queries presentationSql queries presentation
Sql queries presentation
NITISH KUMAR
 
SQL Functions and Operators
SQL Functions and OperatorsSQL Functions and Operators
SQL Functions and Operators
Mohan Kumar.R
 
Sql operator
Sql operatorSql operator
Sql operator
Pooja Dixit
 

Viewers also liked (20)

Sql Server Basics
Sql Server BasicsSql Server Basics
Sql Server Basics
rainynovember12
 
MS Sql Server: Introduction To Database Concepts
MS Sql Server: Introduction To Database ConceptsMS Sql Server: Introduction To Database Concepts
MS Sql Server: Introduction To Database Concepts
DataminingTools Inc
 
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Beat Signer
 
What Is SQL?
What Is SQL?What Is SQL?
What Is SQL?
QATestLab
 
Geek Sync | Rewriting Bad SQL Code 101
Geek Sync | Rewriting Bad SQL Code 101Geek Sync | Rewriting Bad SQL Code 101
Geek Sync | Rewriting Bad SQL Code 101
IDERA Software
 
SQL 101 for business experts and stakeholders
SQL 101 for business experts and stakeholdersSQL 101 for business experts and stakeholders
SQL 101 for business experts and stakeholders
Iván Stepaniuk
 
Les01 Writing Basic Sql Statements
Les01 Writing Basic Sql StatementsLes01 Writing Basic Sql Statements
Les01 Writing Basic Sql Statements
NETsolutions Asia: NSA – Thailand, Sripatum University: SPU
 
SQL DDL
SQL DDLSQL DDL
SQL DDL
Vikas Gupta
 
Complex queries in sql
Complex queries in sqlComplex queries in sql
Complex queries in sql
Charan Reddy
 
Writing Basic SQL SELECT Statements
Writing Basic SQL SELECT StatementsWriting Basic SQL SELECT Statements
Writing Basic SQL SELECT Statements
Salman Memon
 
Sql server 2012 ha dr
Sql server 2012 ha drSql server 2012 ha dr
Sql server 2012 ha dr
Joseph D'Antoni
 
ASP.NET Core deployment options
ASP.NET Core deployment optionsASP.NET Core deployment options
ASP.NET Core deployment options
Ken Cenerelli
 
OOPs fundamentals session for freshers in my office (Aug 5, 13)
OOPs fundamentals session for freshers in my office (Aug 5, 13)OOPs fundamentals session for freshers in my office (Aug 5, 13)
OOPs fundamentals session for freshers in my office (Aug 5, 13)
Ashoka R K T
 
Javascript and Jquery: The connection between
Javascript and Jquery: The connection betweenJavascript and Jquery: The connection between
Javascript and Jquery: The connection between
Clint LaForest
 
009 sql server management studio
009 sql server management studio009 sql server management studio
009 sql server management studio
let's go to study
 
.Net framework architecture
.Net framework architecture.Net framework architecture
.Net framework architecture
Fad Zulkifli
 
Back to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentBack to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web Development
Clint LaForest
 
ASP.NET OVERVIEW
ASP.NET OVERVIEWASP.NET OVERVIEW
ASP.NET OVERVIEW
Rishi Kothari
 
C# fundamentals Part 2
C# fundamentals Part 2C# fundamentals Part 2
C# fundamentals Part 2
iFour Institute - Sustainable Learning
 
Future Web Trends - at Innovation series with Jimmy Wales
Future Web Trends - at Innovation series with Jimmy WalesFuture Web Trends - at Innovation series with Jimmy Wales
Future Web Trends - at Innovation series with Jimmy Wales
Matthew Buckland
 
MS Sql Server: Introduction To Database Concepts
MS Sql Server: Introduction To Database ConceptsMS Sql Server: Introduction To Database Concepts
MS Sql Server: Introduction To Database Concepts
DataminingTools Inc
 
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Beat Signer
 
What Is SQL?
What Is SQL?What Is SQL?
What Is SQL?
QATestLab
 
Geek Sync | Rewriting Bad SQL Code 101
Geek Sync | Rewriting Bad SQL Code 101Geek Sync | Rewriting Bad SQL Code 101
Geek Sync | Rewriting Bad SQL Code 101
IDERA Software
 
SQL 101 for business experts and stakeholders
SQL 101 for business experts and stakeholdersSQL 101 for business experts and stakeholders
SQL 101 for business experts and stakeholders
Iván Stepaniuk
 
Complex queries in sql
Complex queries in sqlComplex queries in sql
Complex queries in sql
Charan Reddy
 
Writing Basic SQL SELECT Statements
Writing Basic SQL SELECT StatementsWriting Basic SQL SELECT Statements
Writing Basic SQL SELECT Statements
Salman Memon
 
ASP.NET Core deployment options
ASP.NET Core deployment optionsASP.NET Core deployment options
ASP.NET Core deployment options
Ken Cenerelli
 
OOPs fundamentals session for freshers in my office (Aug 5, 13)
OOPs fundamentals session for freshers in my office (Aug 5, 13)OOPs fundamentals session for freshers in my office (Aug 5, 13)
OOPs fundamentals session for freshers in my office (Aug 5, 13)
Ashoka R K T
 
Javascript and Jquery: The connection between
Javascript and Jquery: The connection betweenJavascript and Jquery: The connection between
Javascript and Jquery: The connection between
Clint LaForest
 
009 sql server management studio
009 sql server management studio009 sql server management studio
009 sql server management studio
let's go to study
 
.Net framework architecture
.Net framework architecture.Net framework architecture
.Net framework architecture
Fad Zulkifli
 
Back to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentBack to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web Development
Clint LaForest
 
Future Web Trends - at Innovation series with Jimmy Wales
Future Web Trends - at Innovation series with Jimmy WalesFuture Web Trends - at Innovation series with Jimmy Wales
Future Web Trends - at Innovation series with Jimmy Wales
Matthew Buckland
 
Ad

Similar to SQL Server Learning Drive (20)

DBMS and SQL(structured query language) .pptx
DBMS and SQL(structured query language) .pptxDBMS and SQL(structured query language) .pptx
DBMS and SQL(structured query language) .pptx
jainendraKUMAR55
 
Database Architecture and Basic Concepts
Database Architecture and Basic ConceptsDatabase Architecture and Basic Concepts
Database Architecture and Basic Concepts
Tony Wong
 
SQLSERVERQUERIES.pptx
SQLSERVERQUERIES.pptxSQLSERVERQUERIES.pptx
SQLSERVERQUERIES.pptx
ssuser6bf2d1
 
Data Manipulation Language.pptx
Data Manipulation Language.pptxData Manipulation Language.pptx
Data Manipulation Language.pptx
EllenGracePorras
 
SQL
SQLSQL
SQL
Shyam Khant
 
SQL Query
SQL QuerySQL Query
SQL Query
Imam340267
 
DATABASE MANAGMENT SYSTEM (DBMS) AND SQL
DATABASE MANAGMENT SYSTEM (DBMS) AND SQLDATABASE MANAGMENT SYSTEM (DBMS) AND SQL
DATABASE MANAGMENT SYSTEM (DBMS) AND SQL
Dev Chauhan
 
Lesson 2_Working_with_Tables_and_SQL_Commands.pptx
Lesson 2_Working_with_Tables_and_SQL_Commands.pptxLesson 2_Working_with_Tables_and_SQL_Commands.pptx
Lesson 2_Working_with_Tables_and_SQL_Commands.pptx
quantumlearnai
 
Understanding-SQL-Joins vvvvvvvvvv.pptx.
Understanding-SQL-Joins vvvvvvvvvv.pptx.Understanding-SQL-Joins vvvvvvvvvv.pptx.
Understanding-SQL-Joins vvvvvvvvvv.pptx.
carabkamas
 
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
SakkaravarthiS1
 
PPT of Common Table Expression (CTE), Window Functions, JOINS, SubQuery
PPT  of Common Table Expression (CTE), Window Functions, JOINS, SubQueryPPT  of Common Table Expression (CTE), Window Functions, JOINS, SubQuery
PPT of Common Table Expression (CTE), Window Functions, JOINS, SubQuery
Abhishek590097
 
Day-2 SQL Theory_V1.pptx
Day-2 SQL Theory_V1.pptxDay-2 SQL Theory_V1.pptx
Day-2 SQL Theory_V1.pptx
uzmasulthana3
 
Sql overview-1232931296681161-1
Sql overview-1232931296681161-1Sql overview-1232931296681161-1
Sql overview-1232931296681161-1
sagaroceanic11
 
Sql slid
Sql slidSql slid
Sql slid
pacatarpit
 
Ms sql server ii
Ms sql server  iiMs sql server  ii
Ms sql server ii
Iblesoft
 
SQL. It education ppt for reference sql process coding
SQL. It education ppt for reference  sql process codingSQL. It education ppt for reference  sql process coding
SQL. It education ppt for reference sql process coding
aditipandey498628
 
SQL Tutorial for BCA-2
SQL Tutorial for BCA-2SQL Tutorial for BCA-2
SQL Tutorial for BCA-2
Raj vardhan
 
Structure query language, database course
Structure query language, database courseStructure query language, database course
Structure query language, database course
yunussufyan2024
 
Lab
LabLab
Lab
neelam_rawat
 
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptxhjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
EliasPetros
 
DBMS and SQL(structured query language) .pptx
DBMS and SQL(structured query language) .pptxDBMS and SQL(structured query language) .pptx
DBMS and SQL(structured query language) .pptx
jainendraKUMAR55
 
Database Architecture and Basic Concepts
Database Architecture and Basic ConceptsDatabase Architecture and Basic Concepts
Database Architecture and Basic Concepts
Tony Wong
 
SQLSERVERQUERIES.pptx
SQLSERVERQUERIES.pptxSQLSERVERQUERIES.pptx
SQLSERVERQUERIES.pptx
ssuser6bf2d1
 
Data Manipulation Language.pptx
Data Manipulation Language.pptxData Manipulation Language.pptx
Data Manipulation Language.pptx
EllenGracePorras
 
DATABASE MANAGMENT SYSTEM (DBMS) AND SQL
DATABASE MANAGMENT SYSTEM (DBMS) AND SQLDATABASE MANAGMENT SYSTEM (DBMS) AND SQL
DATABASE MANAGMENT SYSTEM (DBMS) AND SQL
Dev Chauhan
 
Lesson 2_Working_with_Tables_and_SQL_Commands.pptx
Lesson 2_Working_with_Tables_and_SQL_Commands.pptxLesson 2_Working_with_Tables_and_SQL_Commands.pptx
Lesson 2_Working_with_Tables_and_SQL_Commands.pptx
quantumlearnai
 
Understanding-SQL-Joins vvvvvvvvvv.pptx.
Understanding-SQL-Joins vvvvvvvvvv.pptx.Understanding-SQL-Joins vvvvvvvvvv.pptx.
Understanding-SQL-Joins vvvvvvvvvv.pptx.
carabkamas
 
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
SakkaravarthiS1
 
PPT of Common Table Expression (CTE), Window Functions, JOINS, SubQuery
PPT  of Common Table Expression (CTE), Window Functions, JOINS, SubQueryPPT  of Common Table Expression (CTE), Window Functions, JOINS, SubQuery
PPT of Common Table Expression (CTE), Window Functions, JOINS, SubQuery
Abhishek590097
 
Day-2 SQL Theory_V1.pptx
Day-2 SQL Theory_V1.pptxDay-2 SQL Theory_V1.pptx
Day-2 SQL Theory_V1.pptx
uzmasulthana3
 
Sql overview-1232931296681161-1
Sql overview-1232931296681161-1Sql overview-1232931296681161-1
Sql overview-1232931296681161-1
sagaroceanic11
 
Ms sql server ii
Ms sql server  iiMs sql server  ii
Ms sql server ii
Iblesoft
 
SQL. It education ppt for reference sql process coding
SQL. It education ppt for reference  sql process codingSQL. It education ppt for reference  sql process coding
SQL. It education ppt for reference sql process coding
aditipandey498628
 
SQL Tutorial for BCA-2
SQL Tutorial for BCA-2SQL Tutorial for BCA-2
SQL Tutorial for BCA-2
Raj vardhan
 
Structure query language, database course
Structure query language, database courseStructure query language, database course
Structure query language, database course
yunussufyan2024
 
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptxhjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
EliasPetros
 
Ad

Recently uploaded (20)

LLM finetuning for multiple choice google bert
LLM finetuning for multiple choice google bertLLM finetuning for multiple choice google bert
LLM finetuning for multiple choice google bert
ChadapornK
 
Defense Against LLM Scheming 2025_04_28.pptx
Defense Against LLM Scheming 2025_04_28.pptxDefense Against LLM Scheming 2025_04_28.pptx
Defense Against LLM Scheming 2025_04_28.pptx
Greg Makowski
 
AI Competitor Analysis: How to Monitor and Outperform Your Competitors
AI Competitor Analysis: How to Monitor and Outperform Your CompetitorsAI Competitor Analysis: How to Monitor and Outperform Your Competitors
AI Competitor Analysis: How to Monitor and Outperform Your Competitors
Contify
 
Stack_and_Queue_Presentation_Final (1).pptx
Stack_and_Queue_Presentation_Final (1).pptxStack_and_Queue_Presentation_Final (1).pptx
Stack_and_Queue_Presentation_Final (1).pptx
binduraniha86
 
Principles of information security Chapter 5.ppt
Principles of information security Chapter 5.pptPrinciples of information security Chapter 5.ppt
Principles of information security Chapter 5.ppt
EstherBaguma
 
Calories_Prediction_using_Linear_Regression.pptx
Calories_Prediction_using_Linear_Regression.pptxCalories_Prediction_using_Linear_Regression.pptx
Calories_Prediction_using_Linear_Regression.pptx
TijiLMAHESHWARI
 
CTS EXCEPTIONSPrediction of Aluminium wire rod physical properties through AI...
CTS EXCEPTIONSPrediction of Aluminium wire rod physical properties through AI...CTS EXCEPTIONSPrediction of Aluminium wire rod physical properties through AI...
CTS EXCEPTIONSPrediction of Aluminium wire rod physical properties through AI...
ThanushsaranS
 
Conic Sectionfaggavahabaayhahahahahs.pptx
Conic Sectionfaggavahabaayhahahahahs.pptxConic Sectionfaggavahabaayhahahahahs.pptx
Conic Sectionfaggavahabaayhahahahahs.pptx
taiwanesechetan
 
DPR_Expert_Recruitment_notice_Revised.pdf
DPR_Expert_Recruitment_notice_Revised.pdfDPR_Expert_Recruitment_notice_Revised.pdf
DPR_Expert_Recruitment_notice_Revised.pdf
inmishra17121973
 
Flip flop presenation-Presented By Mubahir khan.pptx
Flip flop presenation-Presented By Mubahir khan.pptxFlip flop presenation-Presented By Mubahir khan.pptx
Flip flop presenation-Presented By Mubahir khan.pptx
mubashirkhan45461
 
How iCode cybertech Helped Me Recover My Lost Funds
How iCode cybertech Helped Me Recover My Lost FundsHow iCode cybertech Helped Me Recover My Lost Funds
How iCode cybertech Helped Me Recover My Lost Funds
ireneschmid345
 
Data Science Courses in India iim skills
Data Science Courses in India iim skillsData Science Courses in India iim skills
Data Science Courses in India iim skills
dharnathakur29
 
04302025_CCC TUG_DataVista: The Design Story
04302025_CCC TUG_DataVista: The Design Story04302025_CCC TUG_DataVista: The Design Story
04302025_CCC TUG_DataVista: The Design Story
ccctableauusergroup
 
Medical Dataset including visualizations
Medical Dataset including visualizationsMedical Dataset including visualizations
Medical Dataset including visualizations
vishrut8750588758
 
Molecular methods diagnostic and monitoring of infection - Repaired.pptx
Molecular methods diagnostic and monitoring of infection  -  Repaired.pptxMolecular methods diagnostic and monitoring of infection  -  Repaired.pptx
Molecular methods diagnostic and monitoring of infection - Repaired.pptx
7tzn7x5kky
 
Digilocker under workingProcess Flow.pptx
Digilocker  under workingProcess Flow.pptxDigilocker  under workingProcess Flow.pptx
Digilocker under workingProcess Flow.pptx
satnamsadguru491
 
Thingyan is now a global treasure! See how people around the world are search...
Thingyan is now a global treasure! See how people around the world are search...Thingyan is now a global treasure! See how people around the world are search...
Thingyan is now a global treasure! See how people around the world are search...
Pixellion
 
Developing Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response ApplicationsDeveloping Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response Applications
VICTOR MAESTRE RAMIREZ
 
Secure_File_Storage_Hybrid_Cryptography.pptx..
Secure_File_Storage_Hybrid_Cryptography.pptx..Secure_File_Storage_Hybrid_Cryptography.pptx..
Secure_File_Storage_Hybrid_Cryptography.pptx..
yuvarajreddy2002
 
Minions Want to eat presentacion muy linda
Minions Want to eat presentacion muy lindaMinions Want to eat presentacion muy linda
Minions Want to eat presentacion muy linda
CarlaAndradesSoler1
 
LLM finetuning for multiple choice google bert
LLM finetuning for multiple choice google bertLLM finetuning for multiple choice google bert
LLM finetuning for multiple choice google bert
ChadapornK
 
Defense Against LLM Scheming 2025_04_28.pptx
Defense Against LLM Scheming 2025_04_28.pptxDefense Against LLM Scheming 2025_04_28.pptx
Defense Against LLM Scheming 2025_04_28.pptx
Greg Makowski
 
AI Competitor Analysis: How to Monitor and Outperform Your Competitors
AI Competitor Analysis: How to Monitor and Outperform Your CompetitorsAI Competitor Analysis: How to Monitor and Outperform Your Competitors
AI Competitor Analysis: How to Monitor and Outperform Your Competitors
Contify
 
Stack_and_Queue_Presentation_Final (1).pptx
Stack_and_Queue_Presentation_Final (1).pptxStack_and_Queue_Presentation_Final (1).pptx
Stack_and_Queue_Presentation_Final (1).pptx
binduraniha86
 
Principles of information security Chapter 5.ppt
Principles of information security Chapter 5.pptPrinciples of information security Chapter 5.ppt
Principles of information security Chapter 5.ppt
EstherBaguma
 
Calories_Prediction_using_Linear_Regression.pptx
Calories_Prediction_using_Linear_Regression.pptxCalories_Prediction_using_Linear_Regression.pptx
Calories_Prediction_using_Linear_Regression.pptx
TijiLMAHESHWARI
 
CTS EXCEPTIONSPrediction of Aluminium wire rod physical properties through AI...
CTS EXCEPTIONSPrediction of Aluminium wire rod physical properties through AI...CTS EXCEPTIONSPrediction of Aluminium wire rod physical properties through AI...
CTS EXCEPTIONSPrediction of Aluminium wire rod physical properties through AI...
ThanushsaranS
 
Conic Sectionfaggavahabaayhahahahahs.pptx
Conic Sectionfaggavahabaayhahahahahs.pptxConic Sectionfaggavahabaayhahahahahs.pptx
Conic Sectionfaggavahabaayhahahahahs.pptx
taiwanesechetan
 
DPR_Expert_Recruitment_notice_Revised.pdf
DPR_Expert_Recruitment_notice_Revised.pdfDPR_Expert_Recruitment_notice_Revised.pdf
DPR_Expert_Recruitment_notice_Revised.pdf
inmishra17121973
 
Flip flop presenation-Presented By Mubahir khan.pptx
Flip flop presenation-Presented By Mubahir khan.pptxFlip flop presenation-Presented By Mubahir khan.pptx
Flip flop presenation-Presented By Mubahir khan.pptx
mubashirkhan45461
 
How iCode cybertech Helped Me Recover My Lost Funds
How iCode cybertech Helped Me Recover My Lost FundsHow iCode cybertech Helped Me Recover My Lost Funds
How iCode cybertech Helped Me Recover My Lost Funds
ireneschmid345
 
Data Science Courses in India iim skills
Data Science Courses in India iim skillsData Science Courses in India iim skills
Data Science Courses in India iim skills
dharnathakur29
 
04302025_CCC TUG_DataVista: The Design Story
04302025_CCC TUG_DataVista: The Design Story04302025_CCC TUG_DataVista: The Design Story
04302025_CCC TUG_DataVista: The Design Story
ccctableauusergroup
 
Medical Dataset including visualizations
Medical Dataset including visualizationsMedical Dataset including visualizations
Medical Dataset including visualizations
vishrut8750588758
 
Molecular methods diagnostic and monitoring of infection - Repaired.pptx
Molecular methods diagnostic and monitoring of infection  -  Repaired.pptxMolecular methods diagnostic and monitoring of infection  -  Repaired.pptx
Molecular methods diagnostic and monitoring of infection - Repaired.pptx
7tzn7x5kky
 
Digilocker under workingProcess Flow.pptx
Digilocker  under workingProcess Flow.pptxDigilocker  under workingProcess Flow.pptx
Digilocker under workingProcess Flow.pptx
satnamsadguru491
 
Thingyan is now a global treasure! See how people around the world are search...
Thingyan is now a global treasure! See how people around the world are search...Thingyan is now a global treasure! See how people around the world are search...
Thingyan is now a global treasure! See how people around the world are search...
Pixellion
 
Developing Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response ApplicationsDeveloping Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response Applications
VICTOR MAESTRE RAMIREZ
 
Secure_File_Storage_Hybrid_Cryptography.pptx..
Secure_File_Storage_Hybrid_Cryptography.pptx..Secure_File_Storage_Hybrid_Cryptography.pptx..
Secure_File_Storage_Hybrid_Cryptography.pptx..
yuvarajreddy2002
 
Minions Want to eat presentacion muy linda
Minions Want to eat presentacion muy lindaMinions Want to eat presentacion muy linda
Minions Want to eat presentacion muy linda
CarlaAndradesSoler1
 

SQL Server Learning Drive

  • 1. Introduction to Structured Query Language (SQL) By Techandmate.com Learn SQL Server With US
  • 2. Objectives 2  Explore basic commands and functions of SQL  How to use SQL for data administration (to create tables, indexes, and views)  How to use SQL for data manipulation (to add, modify, delete, and retrieve data)  How to use SQL to query a database to extract useful information
  • 3. Agenda  What is SQL ?  Data Types  Constraints  Database Relationships  SQL Queries  Transact- SQL Commands | DDL , DCL ,DML  Retrieving Data  Customizing Data  Grouping Data  SQL Operators  Joining Data
  • 4. Agenda continue  Inserting , Updating and Deleting Data  Working With Tables  Working with Views  Working With Constraints  Generating Scripts  Working with Stored Procedures  Working with Functions
  • 5. Introduction to SQL 5  SQL stands for Structured Query Language. SQL is used to communicate with a database. According to ANSI (American National Standards Institute), it is the standard language for relational database management systems  SQL functions fit into two broad categories:  Data definition language  SQL includes commands to:  Create database objects, such as tables, indexes, and views  Define access rights to those database objects  Data manipulation language  Includes commands to insert, update, delete, and retrieve data within database tables
  • 6. SQL Database Objects  A SQL Server database has lot of objects like  Tables  Views  Stored Procedures  Functions  Rules  Defaults  Cursors  Triggers
  • 7. SQL Server Data types  Integer : Stores whole number  Float : Stores real numbers  Text : Stores characters  Decimal: Stores real numbers  Money : Stores monetary data. Supports 4 places after decimal  Date : Stores date and time  Binary : Stores images and other large objects  Miscellaneous : Different types special to SQL Server.
  • 8.  A null value is an unknown  Null value is not as zero or space.
  • 9.  every value in a column or set of columns must be unique.  When there is not the primary key.  Example  no two employees can have the same phone number
  • 10.  The primary key value must be unique and not null.  Multiple UNIQUE constraints and only one Primary key in a Table .
  • 11.  FOREIGN KEY in one table points to a PRIMARY KEY in another table.  prevents that invalid data form being inserted into the foreign key column
  • 12.  used to limit the value range that can be placed in a column.  Example :  A column must only include integers greater than 0
  • 13.  used to insert a default value into a column
  • 14.  Create , Alter , Drop , Truncate  meant to deal with the structure of the database objects (the object itself) like tables, views, procedures and so on.  Insert , Delete , Update , SELECT  deal with the contents of the tables rather than the structure of the tables  GRANT , DENY , REVOKE  maintain security of the database objects access and use
  • 15.  adding a new database object to the database  changing the structure of an existing database object  removing a database object from the database permanently  removing all rows from a table without logging the individual row deletions
  • 16.  retrieving data from the database by specifying which columns and rows to be retrieved  adding a new row (and not column) into the table  modifying the existing data in the tabl  removing an existing data from the table
  • 17.  giving privileges to the users  denies permissions from a security account in the current database and prevents the security account from inheriting the permission through its group or role memberships  removing privileges from the users that are previously granted those permissions
  • 18.  Retrieve data from database SELECT * | column1 [, column2, …….] FROM table
  • 20.  Specify a condition to limit the result SELECT * | column1 [, column2, …….] FROM table [WHERE conditions]
  • 23.  sort the retrieved rows by a specific column or set of columns SELECT * | column1 [, column2, …….] FROM table [WHERE conditions] [ORDER BY column1 [, column2, ……..] ASC, DESC]
  • 25. 1 2
  • 28.  eliminates duplicate row values from the results  Example : the Next Slide
  • 34.  used to divide the rows in a table into smaller groups SELECT * | column1, group_function (column2), ……. FROM table [WHERE conditions] [GROUP BY column1, ……..] [ORDER BY column1 [, column2, ……..] ASC, DESC]
  • 36.  used to restrict the group results SELECT * | column1, group_function (column2), ……. FROM table [WHERE conditions] [GROUP BY column1, ……..] HAVING [conditions] [ORDER BY column1 [, column2, ……..] ASC, DESC]
  • 39.  Arithmetic operators  Comparison operators  Logical operators  Set Operators  Other operators
  • 40.  addition (+)  subtraction (-)  multiplication (*)  division (/).
  • 41.  compare two or more values DescriptionOperator Equal= Lease than< Greater than> Less than or equal<= Greater than or equal>= Not Equal<>
  • 43. • Used to get a logical value (True or False)
  • 45.  combine the results of two or more queries into one result  UNION/ UNION ALL  INTERSECT  EXCEPT
  • 47. • Create a Single Result Set from Multiple Queries – Similar data types – Same number of columns – Same column order in select list USE northwind SELECT (firstname + ' ' + lastname) AS name ,city, postalcode FROM employees UNION SELECT companyname, city, postalcode FROM customers GO
  • 48.  returns only the records that have the same values in the selected columns in both tables. USE northwind SELECT (firstname + ' ' + lastname) AS name ,city, postalcode FROM employees INTERSECT SELECT companyname, city, postalcode FROM customers GO
  • 49.  return rows returned by the first query that are not present in the second query USE northwind SELECT (firstname + ' ' + lastname) AS name ,city, postalcode FROM employees EXCEPT SELECT companyname, city, postalcode FROM customers GO
  • 52.  Example 1 (without an alias name)  Example 2 (with an alias name) USE joindb SELECT buyer_name, s.buyer_id, qty FROM buyers AS b INNER JOIN sales AS s ON b.buyer_id = s.buyer_id GO USE joindb SELECT buyer_name, sales.buyer_id, qty FROM buyers INNER JOIN sales ON buyers.buyer_id = sales.buyer_id GO This slide from 2071b from Microsoft
  • 53.  Introduction to Joins  Using Inner Joins  Using Outer Joins  Using Cross Joins  Joining More Than Two Tables  Joining a Table to Itself
  • 54.  Selects Specific Columns from Multiple Tables  JOIN keyword specifies that tables are joined and how to join them  ON keyword specifies join condition  Queries Two or More Tables to Produce a Result Set  Use primary and foreign keys as join conditions  Use columns common to specified tables to join tables
  • 55.  return rows only when there is at least one row from both tables that matches the join condition SELECT <select list> FROM table1 inner join table2 ON (table1.column1 = table2.column2)
  • 56. USE joindb SELECT buyer_name, sales.buyer_id, qty FROM buyers INNER JOIN sales ON buyers.buyer_id = sales.buyer_id GO sales buyer_id prod_id qty 1 1 4 3 2 3 1 5 15 5 37 11 4 2 1003 buyers buyer_name Adam Barr Sean Chai Eva Corets Erin O’Melia buyer_id 1 2 3 4 Result buyer_name Adam Barr Adam Barr Erin O’Melia Eva Corets buyer_id qty 1 1 4 3 15 5 37 11 Erin O’Melia 4 1003 Example 1
  • 57.  includes all rows in the left table in the results whether or not there are matching values on the common column in the right table. in addition to the matching values in Both table. : All rows from the Left table are returned SELECT <select list> FROM table1 left outer join table2 ON (table1.column1 = table2.column2)
  • 58. USE joindb SELECT buyer_name, sales.buyer_id, qty FROM buyers LEFT OUTER JOIN sales ON buyers.buyer_id = sales.buyer_id GO sales buyer_id prod_id qty 1 1 4 3 2 3 1 5 15 5 37 11 4 2 1003 buyers buyer_name Adam Barr Sean Chai Eva Corets Erin O’Melia buyer_id 1 2 3 4 Result buyer_name Adam Barr Adam Barr Erin O’Melia Eva Corets buyer_id qty 1 1 4 3 15 5 37 11 Erin O’Melia 4 1003 Sean Chai NULL NULL Example 1
  • 59.  the reverse of LEFT OUTER joins  All rows from the right table are returned  Null values are returned for the left table any time a right table row has no matching row in the left table. SELECT <select list> FROM table1 right outer join table2 ON (table1.column1 = table2.column2)
  • 60.  returns all the rows from the left table , and all the rows from the right table  Also it returns rows in the left table that do not have matches in the right table, or if there are rows in right table that do not have matches in the left table.
  • 61. NameID Some11 Some22 Some33 CountryID Loc11 Loc22 Loc44 SELECT a.id ,b.id, a.name , b.country FROM LeftTable as a Full Join RightTable as b On a.id = b.id Full Join
  • 62.  Join table with it self SELECT a.column , b.column FROM Table1 as a JOIN Table1 as b ON a.column = b.column
  • 63. • I want Every Employee Name with his Manager
  • 65.  return all rows from both tables  Each row from the left table is combined with all rows from Second Table  the number of rows in the left table multiplied by the number of rows in the right table.  Table1 >> 2 rows,  Table2 >> 5 rows,  >>10 rows  Example :  Possible ways
  • 67. USE joindb SELECT buyer_name, qty FROM buyers CROSS JOIN sales GO Result buyer_name Adam Barr Adam Barr Adam Barr Adam Barr qty 15 5 37 11 Adam Barr 1003 Sean Chai 15 Sean Chai 5 Sean Chai 37 Sean Chai 11 Sean Chai 1003 Eva Corets 15 ... ... sales buyer_id prod_id qty 1 1 4 3 2 3 1 5 15 5 37 11 4 2 1003 buyers buyer_id 1 2 3 4 buyer_name Adam Barr Sean Chai Eva Corets Erin O’Melia Example 1
  • 70.  is responsible for adding a new row into the table INSERT [INTO] table [column1, column2, ………..] VALUES (value1, value2, ………….. )
  • 71. • Inserting Data without columns name
  • 72. • Inserting Data with columns name Note: You can verify the result by write SELECT statement.
  • 73. SELECT …… <select_list> INTO <new_table> FROM <table_name> [WHERE <search_condition>]
  • 77.  is responsible for modifying the existing data in the table UPDATE <table> SET column1 = value1 [, column2 = value2, ……] WHERE [conditions]
  • 79.  is responsible for removing an existing data from the table DELETE <table> WHERE [conditions]
  • 81. :  removes all rows from a table TRUNCATE Table <table>
  • 82.  is new statement in SQL Server 2008  INSERT, UPDATE, and DELETE in a single statement . Based on Condition
  • 83. MERGE INTO table_name table_alias USING (table|view|sub_query) alias ON (join condition) WHEN MATCHED THEN UPDATE SET col1 = col_val1, col2 = col2_val WHEN NOT MATCHED THEN INSERT (column_list) VALUES (column_values);
  • 88.  Using User Interface
  • 89.  create new tables CREATE TABLE <table_name> ( column1 datatype , column2 datatype , ............... (
  • 91.  Altering an existing table  Using User Interface
  • 92. modify existing tables ALTER TABLE <table_name> Add colum_name datatype ALTER TABLE <table_name> ALTER COLUMN colum_name datatype ALTER TABLE <table_name> DROP COLUMN colum_name datatype
  • 94.  Disallow null , and decrease length
  • 96.  Dropping an existing table
  • 98.  drop existing tables : Don’t forget to Press Refresh DROP TABLE <table_name>
  • 100.  is simply a SELECT statement that has been given a name and stored in a database  Restricting data access  Making complex queries easy
  • 101. CREATE VIEW <view_name> AS <select_statement> Create View LondonEmployees as SELECT EmloyeeId , LastName , FirstName ,City , Address FROM Employees
  • 104.  Any changes to View that may cause a record disappear from the view , will raises runtime error .  Example : Create view SomeOrders as SELECT * FROM Orders where Orders.ShipCity = 'London‘ With Check Option
  • 107.  Creating tables with constraints
  • 114.  add a new constraint
  • 117.  Create a new Database >> New Database  Attach Existing Database >> Attach
  • 118.  removes the database entry from the instance  closes all files associated to the database  releases all operating system locks  Detaching a database
  • 120.  Database diagrams graphically show the structure of the database 1. Select your database from the Databases node in the Object Explorer. 2. Right-click the Database Diagrams folder. 3. Select the New Database Diagram
  • 121. :
  • 122. :
  • 127.  Files with Extension (.sql ) script1.sql
  • 132. : a sequence of operations performed as a single logical unit of work. all of its data modifications are performed or none of them is performed.
  • 133.  Autocommit transactions  The default for SQL Server  Each individual DML or DDL statement is committed when it Completes  You do not have to specify any statements to control transactions  Implicit transactions SET IMPLICIT_TRANSACTIONS ON Each Transact-SQL statement (INSERT,UPDATE,DELETE) execute as a Transaction  Explicit transactions Starting with BEGIN TRANSACTION Statement
  • 134. : The COMMIT statement. : The ROLLBACK statement .
  • 135. >> automatically Rollback  If it prevents the successful completion of a transaction >> need to Check @@Error  constraint violation (Check Constraint )
  • 139. Define a location to which a transaction can return like save point in any game SAVE TRANSACTION <savepoint_name> ROLLBACK TRANSACTION <savepoint_name>
  • 145.  You Can :  Contains Statement that Perform Operations  Accept input Parameters  Return Status Value  success or failure  Return Multiple Output parameters
  • 146.  They are registered (permanently stored) at the server.  They can have security attributes (such as permissions).  They can enhance the security of your application.  They allow modular programming.  They are named code and so they allow repeating execution.  They can reduce network traffic.
  • 147.  User-defined stored procedures  System stored procedures
  • 148. CREATE PROC | PROCEDURE <procedure_name> [@parameter data_type] AS <sql_statement>
  • 151. ALTER PROC | PROCEDURE <procedure_name> [@parameter data_type] AS <sql_statement>
  • 152. DROP PROC | PROCEDURE <procedure_name>
  • 154.  Like functions in programming languages  accept parameters  perform an action  return the result of that action as a value  They allow modular programming.  They allow faster execution.  They always return a value to the calling program.
  • 155.  User-defined scalar functions  Built-in Functions
  • 157. CREATE FUNCTION <function_name> [(@parameter data_type)] RETURNS return_data_type | table [AS] BEGIN function_code RETURN scalar_expression | select statement END
  • 162.  specifies TABLE as a return data type  returns a SELECT statement rather than a single value
  • 167.  Using the ALTER FUNCTION statement ALTER FUNCTION <function_name> [(@parameter data_type)] RETURNS return_data_type [AS] BEGIN function_code RETURN scalar_expression END
  • 170.  a special type of stored procedure.  Invoked automatically  Not called directly  DDL triggers  DML triggers
  • 171.  They can query other tables and include complex Transact-SQL statements  They can reference columns in other tables  with more complex than check
  • 172.  override the standard actions CREATE TRIGGER <trigger_name> on <table | view> INSTEAD OF INSERT | UPDATE | DELETE AS BEGIN <trigger_code> END
  • 173.  INSTEAD OF INSERT triggers  INSTEAD OF UPDATE triggers  INSTEAD OF DELETE triggers
  • 174. Create a trigger that protects all the data in the Course table from deletion
  • 176. : create trigger that insert new trainee when inserting new course
  • 179.  Alter and Drop statements : Drop trigger
  • 180.  This is not every thing about Transact-SQL  This is just an introduction  May you read :  2071B Book (Querying MS SQL Server with Transact-SQL )  2073A Book(Programming MS SQL Server Database)  MSDN : http://msdn.microsoft.com/en- us/library/aa299742(v=SQL.80).aspx  Google