SlideShare a Scribd company logo
1 of 181
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
 Specify a condition to limit the result
SELECT * | column1 [, column2, …….]
FROM table
[WHERE conditions]
 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]
1
2
 eliminates duplicate row values from the results
 Example : the Next Slide
 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]
 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]
 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<>
• Used to get a logical value (True or
False)
 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
 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
 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
 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>]
 is responsible for modifying the existing data in the
table
UPDATE <table>
SET column1 = value1 [, column2 = value2, ……]
WHERE [conditions]
 is responsible for removing an existing data from
the table
DELETE <table>
WHERE [conditions]
:
 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);
 Using User Interface
 create new tables
CREATE TABLE <table_name>
(
column1 datatype ,
column2 datatype ,
...............
(
 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
 Disallow null , and decrease length
 Dropping an existing table
 drop existing tables
: Don’t forget to Press Refresh
DROP TABLE <table_name>
 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
 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
 Creating tables with constraints
 add a new constraint
 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
 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
:
:
 Files with Extension (.sql )
script1.sql
:
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 )
Define a location to which a transaction can return
like save point in any game
SAVE TRANSACTION <savepoint_name>
ROLLBACK TRANSACTION
<savepoint_name>
 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>
ALTER PROC | PROCEDURE
<procedure_name>
[@parameter data_type]
AS <sql_statement>
DROP PROC | PROCEDURE <procedure_name>
 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
CREATE FUNCTION <function_name>
[(@parameter data_type)]
RETURNS return_data_type | table
[AS]
BEGIN
function_code
RETURN scalar_expression | select
statement
END
 specifies TABLE as a return data type
 returns a SELECT statement rather than a single
value
 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>
 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
:
create trigger that insert new trainee when
inserting new course
 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

More Related Content

What's hot (20)

Sql commands
Sql commandsSql commands
Sql commands
 
Good sql server interview_questions
Good sql server interview_questionsGood sql server interview_questions
Good sql server interview_questions
 
SQL subquery
SQL subquerySQL subquery
SQL subquery
 
MySQL JOINS
MySQL JOINSMySQL JOINS
MySQL JOINS
 
Presentation slides of Sequence Query Language (SQL)
Presentation slides of Sequence Query Language (SQL)Presentation slides of Sequence Query Language (SQL)
Presentation slides of Sequence Query Language (SQL)
 
Chapter 4 Structured Query Language
Chapter 4 Structured Query LanguageChapter 4 Structured Query Language
Chapter 4 Structured Query Language
 
Basic sql Commands
Basic sql CommandsBasic sql Commands
Basic sql Commands
 
8. sql
8. sql8. sql
8. sql
 
Les08 (manipulating data)
Les08 (manipulating data)Les08 (manipulating data)
Les08 (manipulating data)
 
SQL JOINS
SQL JOINSSQL JOINS
SQL JOINS
 
Les01 (retrieving data using the sql select statement)
Les01 (retrieving data using the sql select statement)Les01 (retrieving data using the sql select statement)
Les01 (retrieving data using the sql select statement)
 
PL/SQL TRIGGERS
PL/SQL TRIGGERSPL/SQL TRIGGERS
PL/SQL TRIGGERS
 
Sql Server Basics
Sql Server BasicsSql Server Basics
Sql Server Basics
 
Sql tutorial
Sql tutorialSql tutorial
Sql tutorial
 
Sql Basics And Advanced
Sql Basics And AdvancedSql Basics And Advanced
Sql Basics And Advanced
 
Oracle Database Sequence
Oracle Database SequenceOracle Database Sequence
Oracle Database Sequence
 
Sql and Sql commands
Sql and Sql commandsSql and Sql commands
Sql and Sql commands
 
Advanced sql
Advanced sqlAdvanced sql
Advanced sql
 
SQL Tutorial - Basic Commands
SQL Tutorial - Basic CommandsSQL Tutorial - Basic Commands
SQL Tutorial - Basic Commands
 
Sql(structured query language)
Sql(structured query language)Sql(structured query language)
Sql(structured query language)
 

Viewers also liked

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 ConceptsDataminingTools 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 101IDERA 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 stakeholdersIván Stepaniuk
 
Complex queries in sql
Complex queries in sqlComplex queries in sql
Complex queries in sqlCharan Reddy
 
Writing Basic SQL SELECT Statements
Writing Basic SQL SELECT StatementsWriting Basic SQL SELECT Statements
Writing Basic SQL SELECT StatementsSalman Memon
 
ASP.NET Core deployment options
ASP.NET Core deployment optionsASP.NET Core deployment options
ASP.NET Core deployment optionsKen 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 betweenClint LaForest
 
009 sql server management studio
009 sql server management studio009 sql server management studio
009 sql server management studiolet's go to study
 
.Net framework architecture
.Net framework architecture.Net framework architecture
.Net framework architectureFad 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 DevelopmentClint 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 WalesMatthew Buckland
 
Your 2012 Marketing Plan: Simple & Powerful
Your 2012 Marketing Plan: Simple & PowerfulYour 2012 Marketing Plan: Simple & Powerful
Your 2012 Marketing Plan: Simple & PowerfulInfusionsoft
 

Viewers also liked (20)

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
 
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...
 
What Is SQL?
What Is SQL?What Is SQL?
What Is SQL?
 
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
 
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
 
Les01 Writing Basic Sql Statements
Les01 Writing Basic Sql StatementsLes01 Writing Basic Sql Statements
Les01 Writing Basic Sql Statements
 
SQL DDL
SQL DDLSQL DDL
SQL DDL
 
Complex queries in sql
Complex queries in sqlComplex queries in sql
Complex queries in sql
 
Writing Basic SQL SELECT Statements
Writing Basic SQL SELECT StatementsWriting Basic SQL SELECT Statements
Writing Basic SQL SELECT Statements
 
Sql server 2012 ha dr
Sql server 2012 ha drSql server 2012 ha dr
Sql server 2012 ha dr
 
ASP.NET Core deployment options
ASP.NET Core deployment optionsASP.NET Core deployment options
ASP.NET Core deployment options
 
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)
 
Javascript and Jquery: The connection between
Javascript and Jquery: The connection betweenJavascript and Jquery: The connection between
Javascript and Jquery: The connection between
 
009 sql server management studio
009 sql server management studio009 sql server management studio
009 sql server management studio
 
.Net framework architecture
.Net framework architecture.Net framework architecture
.Net framework architecture
 
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
 
ASP.NET OVERVIEW
ASP.NET OVERVIEWASP.NET OVERVIEW
ASP.NET OVERVIEW
 
C# fundamentals Part 2
C# fundamentals Part 2C# fundamentals Part 2
C# fundamentals Part 2
 
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
 
Your 2012 Marketing Plan: Simple & Powerful
Your 2012 Marketing Plan: Simple & PowerfulYour 2012 Marketing Plan: Simple & Powerful
Your 2012 Marketing Plan: Simple & Powerful
 

Similar to SQL Server Learning Drive

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) .pptxjainendraKUMAR55
 
Database Architecture and Basic Concepts
Database Architecture and Basic ConceptsDatabase Architecture and Basic Concepts
Database Architecture and Basic ConceptsTony Wong
 
SQLSERVERQUERIES.pptx
SQLSERVERQUERIES.pptxSQLSERVERQUERIES.pptx
SQLSERVERQUERIES.pptxssuser6bf2d1
 
Data Manipulation Language.pptx
Data Manipulation Language.pptxData Manipulation Language.pptx
Data Manipulation Language.pptxEllenGracePorras
 
DATABASE MANAGMENT SYSTEM (DBMS) AND SQL
DATABASE MANAGMENT SYSTEM (DBMS) AND SQLDATABASE MANAGMENT SYSTEM (DBMS) AND SQL
DATABASE MANAGMENT SYSTEM (DBMS) AND SQLDev Chauhan
 
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, SubQueryAbhishek590097
 
Day-2 SQL Theory_V1.pptx
Day-2 SQL Theory_V1.pptxDay-2 SQL Theory_V1.pptx
Day-2 SQL Theory_V1.pptxuzmasulthana3
 
Sql overview-1232931296681161-1
Sql overview-1232931296681161-1Sql overview-1232931296681161-1
Sql overview-1232931296681161-1sagaroceanic11
 
Ms sql server ii
Ms sql server  iiMs sql server  ii
Ms sql server iiIblesoft
 
SQL Tutorial for BCA-2
SQL Tutorial for BCA-2SQL Tutorial for BCA-2
SQL Tutorial for BCA-2Raj vardhan
 
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptxhjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptxEliasPetros
 
SQL Fundamentals
SQL FundamentalsSQL Fundamentals
SQL FundamentalsBrian Foote
 
SQL -Beginner To Intermediate Level.pdf
SQL -Beginner To Intermediate Level.pdfSQL -Beginner To Intermediate Level.pdf
SQL -Beginner To Intermediate Level.pdfDraguClaudiu
 

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
 
Database Architecture and Basic Concepts
Database Architecture and Basic ConceptsDatabase Architecture and Basic Concepts
Database Architecture and Basic Concepts
 
SQLSERVERQUERIES.pptx
SQLSERVERQUERIES.pptxSQLSERVERQUERIES.pptx
SQLSERVERQUERIES.pptx
 
Data Manipulation Language.pptx
Data Manipulation Language.pptxData Manipulation Language.pptx
Data Manipulation Language.pptx
 
SQL
SQLSQL
SQL
 
SQL Query
SQL QuerySQL Query
SQL Query
 
DATABASE MANAGMENT SYSTEM (DBMS) AND SQL
DATABASE MANAGMENT SYSTEM (DBMS) AND SQLDATABASE MANAGMENT SYSTEM (DBMS) AND SQL
DATABASE MANAGMENT SYSTEM (DBMS) AND SQL
 
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...
 
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
 
Day-2 SQL Theory_V1.pptx
Day-2 SQL Theory_V1.pptxDay-2 SQL Theory_V1.pptx
Day-2 SQL Theory_V1.pptx
 
Sql overview-1232931296681161-1
Sql overview-1232931296681161-1Sql overview-1232931296681161-1
Sql overview-1232931296681161-1
 
Sql slid
Sql slidSql slid
Sql slid
 
Ms sql server ii
Ms sql server  iiMs sql server  ii
Ms sql server ii
 
SQL Tutorial for BCA-2
SQL Tutorial for BCA-2SQL Tutorial for BCA-2
SQL Tutorial for BCA-2
 
Lab
LabLab
Lab
 
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptxhjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
hjkjlboiupoiuuouoiuoiuoiuoiuoiuoippt.pptx
 
Views, Triggers, Functions, Stored Procedures, Indexing and Joins
Views, Triggers, Functions, Stored Procedures,  Indexing and JoinsViews, Triggers, Functions, Stored Procedures,  Indexing and Joins
Views, Triggers, Functions, Stored Procedures, Indexing and Joins
 
ADVANCE ITT BY PRASAD
ADVANCE ITT BY PRASADADVANCE ITT BY PRASAD
ADVANCE ITT BY PRASAD
 
SQL Fundamentals
SQL FundamentalsSQL Fundamentals
SQL Fundamentals
 
SQL -Beginner To Intermediate Level.pdf
SQL -Beginner To Intermediate Level.pdfSQL -Beginner To Intermediate Level.pdf
SQL -Beginner To Intermediate Level.pdf
 

Recently uploaded

一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格q6pzkpark
 
怎样办理伦敦大学毕业证(UoL毕业证书)成绩单学校原版复制
怎样办理伦敦大学毕业证(UoL毕业证书)成绩单学校原版复制怎样办理伦敦大学毕业证(UoL毕业证书)成绩单学校原版复制
怎样办理伦敦大学毕业证(UoL毕业证书)成绩单学校原版复制vexqp
 
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...Health
 
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制vexqp
 
Aspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraAspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraGovindSinghDasila
 
Lecture_2_Deep_Learning_Overview-newone1
Lecture_2_Deep_Learning_Overview-newone1Lecture_2_Deep_Learning_Overview-newone1
Lecture_2_Deep_Learning_Overview-newone1ranjankumarbehera14
 
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book now
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book nowVadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book now
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book nowgargpaaro
 
Digital Transformation Playbook by Graham Ware
Digital Transformation Playbook by Graham WareDigital Transformation Playbook by Graham Ware
Digital Transformation Playbook by Graham WareGraham Ware
 
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...Elaine Werffeli
 
Data Analyst Tasks to do the internship.pdf
Data Analyst Tasks to do the internship.pdfData Analyst Tasks to do the internship.pdf
Data Analyst Tasks to do the internship.pdftheeltifs
 
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样wsppdmt
 
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24  Building Real-Time Pipelines With FLaNKDATA SUMMIT 24  Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNKTimothy Spann
 
Top profile Call Girls In Hapur [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In Hapur [ 7014168258 ] Call Me For Genuine Models We ...Top profile Call Girls In Hapur [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In Hapur [ 7014168258 ] Call Me For Genuine Models We ...nirzagarg
 
Capstone in Interprofessional Informatic // IMPACT OF COVID 19 ON EDUCATION
Capstone in Interprofessional Informatic  // IMPACT OF COVID 19 ON EDUCATIONCapstone in Interprofessional Informatic  // IMPACT OF COVID 19 ON EDUCATION
Capstone in Interprofessional Informatic // IMPACT OF COVID 19 ON EDUCATIONLakpaYanziSherpa
 
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...gajnagarg
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteedamy56318795
 
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制vexqp
 
Ranking and Scoring Exercises for Research
Ranking and Scoring Exercises for ResearchRanking and Scoring Exercises for Research
Ranking and Scoring Exercises for ResearchRajesh Mondal
 

Recently uploaded (20)

一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
 
怎样办理伦敦大学毕业证(UoL毕业证书)成绩单学校原版复制
怎样办理伦敦大学毕业证(UoL毕业证书)成绩单学校原版复制怎样办理伦敦大学毕业证(UoL毕业证书)成绩单学校原版复制
怎样办理伦敦大学毕业证(UoL毕业证书)成绩单学校原版复制
 
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
 
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
 
Aspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraAspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - Almora
 
Lecture_2_Deep_Learning_Overview-newone1
Lecture_2_Deep_Learning_Overview-newone1Lecture_2_Deep_Learning_Overview-newone1
Lecture_2_Deep_Learning_Overview-newone1
 
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book now
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book nowVadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book now
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book now
 
Digital Transformation Playbook by Graham Ware
Digital Transformation Playbook by Graham WareDigital Transformation Playbook by Graham Ware
Digital Transformation Playbook by Graham Ware
 
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
 
Data Analyst Tasks to do the internship.pdf
Data Analyst Tasks to do the internship.pdfData Analyst Tasks to do the internship.pdf
Data Analyst Tasks to do the internship.pdf
 
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
 
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24  Building Real-Time Pipelines With FLaNKDATA SUMMIT 24  Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
 
Top profile Call Girls In Hapur [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In Hapur [ 7014168258 ] Call Me For Genuine Models We ...Top profile Call Girls In Hapur [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In Hapur [ 7014168258 ] Call Me For Genuine Models We ...
 
Capstone in Interprofessional Informatic // IMPACT OF COVID 19 ON EDUCATION
Capstone in Interprofessional Informatic  // IMPACT OF COVID 19 ON EDUCATIONCapstone in Interprofessional Informatic  // IMPACT OF COVID 19 ON EDUCATION
Capstone in Interprofessional Informatic // IMPACT OF COVID 19 ON EDUCATION
 
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
 
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
 
Sequential and reinforcement learning for demand side management by Margaux B...
Sequential and reinforcement learning for demand side management by Margaux B...Sequential and reinforcement learning for demand side management by Margaux B...
Sequential and reinforcement learning for demand side management by Margaux B...
 
Ranking and Scoring Exercises for Research
Ranking and Scoring Exercises for ResearchRanking and Scoring Exercises for Research
Ranking and Scoring Exercises for Research
 

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
  • 19.
  • 20.  Specify a condition to limit the result SELECT * | column1 [, column2, …….] FROM table [WHERE conditions]
  • 21.
  • 22.
  • 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]
  • 24.
  • 25. 1 2
  • 26.
  • 27.
  • 28.  eliminates duplicate row values from the results  Example : the Next Slide
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 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]
  • 35.
  • 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]
  • 37.
  • 38.
  • 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<>
  • 42.
  • 43. • Used to get a logical value (True or False)
  • 44.
  • 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
  • 50.
  • 51.
  • 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
  • 64.
  • 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
  • 68.
  • 69.
  • 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>]
  • 74.
  • 75.
  • 76.
  • 77.  is responsible for modifying the existing data in the table UPDATE <table> SET column1 = value1 [, column2 = value2, ……] WHERE [conditions]
  • 78.
  • 79.  is responsible for removing an existing data from the table DELETE <table> WHERE [conditions]
  • 80.
  • 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);
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.  Using User Interface
  • 89.  create new tables CREATE TABLE <table_name> ( column1 datatype , column2 datatype , ............... (
  • 90.
  • 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
  • 93.
  • 94.  Disallow null , and decrease length
  • 95.
  • 96.  Dropping an existing table
  • 97.
  • 98.  drop existing tables : Don’t forget to Press Refresh DROP TABLE <table_name>
  • 99.
  • 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
  • 102.
  • 103.
  • 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
  • 105.
  • 106.
  • 107.  Creating tables with constraints
  • 108.
  • 109.
  • 110.
  • 111.
  • 112.
  • 113.
  • 114.  add a new constraint
  • 115.
  • 116.
  • 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
  • 119.
  • 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. :
  • 123.
  • 124.
  • 125.
  • 126.
  • 127.  Files with Extension (.sql ) script1.sql
  • 128.
  • 129.
  • 130.
  • 131.
  • 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 )
  • 136.
  • 137.
  • 138.
  • 139. Define a location to which a transaction can return like save point in any game SAVE TRANSACTION <savepoint_name> ROLLBACK TRANSACTION <savepoint_name>
  • 140.
  • 141.
  • 142.
  • 143.
  • 144.
  • 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>
  • 149.
  • 150.
  • 151. ALTER PROC | PROCEDURE <procedure_name> [@parameter data_type] AS <sql_statement>
  • 152. DROP PROC | PROCEDURE <procedure_name>
  • 153.
  • 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
  • 156.
  • 157. CREATE FUNCTION <function_name> [(@parameter data_type)] RETURNS return_data_type | table [AS] BEGIN function_code RETURN scalar_expression | select statement END
  • 158.
  • 159.
  • 160.
  • 161.
  • 162.  specifies TABLE as a return data type  returns a SELECT statement rather than a single value
  • 163.
  • 164.
  • 165.
  • 166.
  • 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
  • 169.
  • 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
  • 175.
  • 176. : create trigger that insert new trainee when inserting new course
  • 177.
  • 178.
  • 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