SlideShare una empresa de Scribd logo
1 de 71
MICROSOFT SQL SERVER
By
Sunny Okoro
Introduction
The purpose of this document is to illustrate various database operations that can be performed on Microsoft SQL Server including object
creations like tables and views along with data mainpulations with join operations like inner joins and functions both built in and user defined
functions.
Development Tools
Database Platform: Microsoft SQL Server 2008R2
Applications: Microsot Excel and Power Pivot, Microsoft SQL Server Business Intelligence Development Studio, Microsoft SQL Server Reporting Services
The date formats specified in the query statement outputmay be different from the ones represented in the table because Microsoft Excel PowerPiviot did an automatic convertation. The
original query from MS SQL Server would have occupied many pages when not presented in a table format. In some currency related data the dollar symbol were added in Excel to make it
easier to read.
USE DB665
SELECT top(25)CUST_NO,DOB AS DATE_OF_BIRTH,
F_NAME + ','+L_NAME AS CUSTOMER_NAME
FROM dbo.CUSTOMER_DIM009;
CUST_NO DATE_OF_BIRTH CUSTOMER_NAME
----------- ----------------------- -----------------------------------------------------------------------------------------------------
13886 1970-09-26 00:00:00.000 Rachel,Taylor
13887 1970-10-12 00:00:00.000 Nathan,Scott
13888 1967-11-06 00:00:00.000 Ian,Brown
13889 1966-08-10 00:00:00.000 Robert,Martin
13890 1966-09-16 00:00:00.000 Jennifer,Carter
13891 1966-12-07 00:00:00.000 Aaron,Simmons
13892 1966-11-25 00:00:00.000 Spencer,Diaz
13893 1966-08-14 00:00:00.000 Dalton,Carter
13894 1969-02-25 00:00:00.000 Robyn,Ruiz
13895 1969-12-25 00:00:00.000 Isabella,Brooks
13896 1969-10-10 00:00:00.000 Hailey,Mitchell
13897 1969-11-24 00:00:00.000 Carol,Washington
13898 1969-10-11 00:00:00.000 Richard,Baker
13899 1969-08-17 00:00:00.000 Cameron,Jones
13900 1969-04-13 00:00:00.000 Isaac,Campbell
13901 1969-10-21 00:00:00.000 Oscar,Foster
13902 1969-03-18 00:00:00.000 Jeremiah,Simmons
13903 1969-11-27 00:00:00.000 Elijah,Hernandez
13904 1969-03-09 00:00:00.000 Natalie,Thompson
13905 1969-03-07 00:00:00.000 Christian,Henderson
13906 1965-06-25 00:00:00.000 Courtney,Evans
13907 1965-02-22 00:00:00.000 Misty,Xie
13908 1965-07-20 00:00:00.000 Alyssa,Diaz
13909 1965-01-21 00:00:00.000 Riley,Price
13910 1965-03-09 00:00:00.000 Isabelle,Butler
(25 row(s) affected)
SELECT TOP(12)CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,
F_NAME + ','+L_NAME AS CUSTOMER_NAME
FROM dbo.CUSTOMER_DIM009;
CUST_NO DATE_OF_BIRTH CUSTOMER_NAME
13886 9/26/1970 Rachel,Taylor
13887 10/12/1970 Nathan,Scott
13888 11/6/1967 Ian,Brown
13889 8/10/1966 Robert,Martin
13890 9/16/1966 Jennifer,Carter
13891 12/7/1966 Aaron,Simmons
13892 11/25/1966 Spencer,Diaz
13893 8/14/1966 Dalton,Carter
13894 2/25/1969 Robyn,Ruiz
13895 12/25/1969 Isabella,Brooks
13896 10/10/1969 Hailey,Mitchell
13897 11/24/1969 Carol,Washington
(12 row(s) affected)
SELECT TOP(12)CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,
F_NAME + ','+L_NAME AS CUSTOMER_NAME
FROM dbo.CUSTOMER_DIM009
ORDER BY CUSTOMER_NAME;
CUST_NO DATE_OF_BIRTH CUSTOMER_NAME
28866 2/5/1974 Aaron,Adams
20285 10/21/1976 Aaron,Alexander
20075 5/18/1953 Aaron,Allen
17862 3/18/1960 Aaron,Baker
12067 11/14/1944 Aaron,Bryant
21414 6/7/1974 Aaron,Butler
21151 12/22/1967 Aaron,Campbell
27916 3/19/1974 Aaron,Carter
28187 11/13/1959 Aaron,Chen
16749 5/10/1974 Aaron,Coleman
27663 9/24/1960 Aaron,Collins
18695 11/4/1969 Aaron,Diaz
(12 row(s) affected)
SELECT TOP(12)CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) AS AGE, GENDER,
F_NAME + ','+L_NAME AS CUSTOMER_NAME
FROM dbo.CUSTOMER_DIM009;
CUST_NO DATE_OF_BIRTH AGE GENDER CUSTOMER_NAME
13886 9/26/1970 41 F Rachel,Taylor
13887 10/12/1970 41 M Nathan,Scott
13888 11/6/1967 44 M Ian,Brown
13889 8/10/1966 45 M Robert,Martin
13890 9/16/1966 45 F Jennifer,Carter
13891 12/7/1966 45 M Aaron,Simmons
13892 11/25/1966 45 M Spencer,Diaz
13893 8/14/1966 45 M Dalton,Carter
13894 2/25/1969 42 F Robyn,Ruiz
13895 12/25/1969 42 F Isabella,Brooks
13896 10/10/1969 42 F Hailey,Mitchell
13897 11/24/1969 42 M Carol,Washington
(12 row(s) affected)
SELECT CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) AS AGE, GENDER,
F_NAME + ','+L_NAME AS CUSTOMER_NAME
INTO
CUSTOMER_NOT_50
FROM dbo.CUSTOMER_DIM009
WHERE DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) < 50;
(10215 row(s) affected)
SELECT CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) AS AGE, GENDER,
F_NAME + ','+L_NAME AS CUSTOMER_NAME
INTO
CUSTOMER_50_ABOVE
FROM dbo.CUSTOMER_DIM009
WHERE DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) >=50;
(8269 row(s) affected)
SELECT TOP(29)CUST_NO, DATE_OF_BIRTH, AGE, GENDER,
CUSTOMER_NAME
FROM
CUSTOMER_NOT_50;
CUST_NO DATE_OF_BIRTH AGE GENDER CUSTOMER_NAME
13886 9/26/1970 41 F Rachel,Taylor
13887 10/12/1970 41 M Nathan,Scott
13888 11/6/1967 44 M Ian,Brown
13889 8/10/1966 45 M Robert,Martin
13890 9/16/1966 45 F Jennifer,Carter
13891 12/7/1966 45 M Aaron,Simmons
13892 11/25/1966 45 M Spencer,Diaz
13893 8/14/1966 45 M Dalton,Carter
13894 2/25/1969 42 F Robyn,Ruiz
13895 12/25/1969 42 F Isabella,Brooks
13896 10/10/1969 42 F Hailey,Mitchell
13897 11/24/1969 42 M Carol,Washington
13898 10/11/1969 42 M Richard,Baker
13899 8/17/1969 42 M Cameron,Jones
13900 4/13/1969 42 M Isaac,Campbell
13901 10/21/1969 42 M Oscar,Foster
13902 3/18/1969 42 M Jeremiah,Simmons
13903 11/27/1969 42 M Elijah,Hernandez
13904 3/9/1969 42 F Natalie,Thompson
13905 3/7/1969 42 M Christian,Henderson
13906 6/25/1965 46 F Courtney,Evans
13907 2/22/1965 46 F Misty,Xie
13908 7/20/1965 46 F Alyssa,Diaz
13909 1/21/1965 46 F Riley,Price
13910 3/9/1965 46 F Isabelle,Butler
13911 5/26/1965 46 F Andrea,Kelly
13912 3/20/1965 46 F Caroline,Simmons
13913 9/18/1965 46 F Angela,Rogers
13914 10/23/1964 47 F Abigail,Bell
SELECT TOP(29)CUST_NO, DATE_OF_BIRTH, AGE, GENDER,
CUSTOMER_NAME
FROM
CUSTOMER_50_ABOVE;
CUST_NO DATE_OF_BIRTH AGE GENDER CUSTOMER_NAME
11311 8/24/1953 58 F Gabrielle,Lopez
11312 4/3/1953 58 F Sara,Richardson
11313 2/27/1953 58 M Trevor,Jenkins
11314 12/21/1953 58 F Mya,Flores
11315 10/1/1953 58 F Hailey,Ward
11316 11/17/1953 58 M Luke,Allen
11317 9/17/1952 59 F Victoria,Russell
11318 10/26/1952 59 F Jessica,Wilson
11319 4/27/1937 74 F Jade,Bailey
11320 6/26/1937 74 F Morgan,Hill
11321 7/8/1938 73 M Terrance,Raman
11322 3/15/1938 73 F Sydney,Garcia
11323 6/20/1938 73 M Jose,Patterson
11324 5/14/1939 72 M Zachary,Anderson
11325 7/2/1939 72 M Elijah,Ross
11326 6/26/1939 72 M Rafael,Xie
11327 3/4/1940 71 M Jaime,Moreno
11328 1/1/1940 71 M Julian,Griffin
11329 7/25/1940 71 M Andy,Alvarez
11330 5/13/1940 71 M Ryan,Thompson
11334 3/22/1961 50 F Nicole,Brown
11335 6/24/1961 50 F Carla,Raman
11337 9/21/1961 50 M Jerome,Romero
11338 8/10/1961 50 M Frank,Navarro
11339 7/8/1961 50 M Dennis,She
11340 4/6/1936 75 F Melody,Munoz
11341 8/21/1936 75 M Randy,Zeng
11343 9/13/1958 53 M Arthur,Carlson
11344 7/24/1957 54 F Jessie,Jimenez
(29 row(s) affected)
select salter.SalesTerritoryKey as sale_territory_code, ltime.Fiscal_Year, ROUND(sum(final_amount),2) as total_amount
from dbo.SALES_TERRITORY_DIM salter inner join dbo.sales_fact sal
on salter.SalesTerritoryKey = sal.TERRITORY_KEY
inner join dbo.time_dim_new ltime
on ltime.time_id = sal.Time_ID
where final_amount is not null
group by rollup(salter.SalesTerritoryKey,ltime.Fiscal_Year);
sale_territory_code Fiscal_Year total_amount
1 2002 $1,023,044.20
1 2003 $684,599.94
1 2004 $2,314,226.18
1 2005 $11,232.62
1 $4,033,102.93
2 2003 $2,264.25
2 2004 $4,954.12
2 $7,218.38
3 2003 $2,288.92
3 2004 $1,027.00
3 $3,315.92
4 2002 $1,686,610.40
4 2003 $891,724.97
4 2004 $3,730,105.20
4 2005 $10,116.62
4 $6,318,557.19
5 2003 $4,019.33
5 2004 $9,378.68
5 2005 $125.93
5 $13,523.93
6 2002 $633,276.58
6 2003 $337,036.82
6 2004 $1,203,212.14
6 2005 $11,993.36
6 $2,185,518.90
7 2002 $457,741.08
7 2003 $699,906.68
7 2004 $1,760,133.46
7 2005 $3,858.61
7 $2,921,639.83
8 2002 $567,255.27
8 2003 $655,538.22
8 2004 $1,971,438.57
8 2005 $3,983.34
8 $3,198,215.39
9 2002 $2,838,415.07
9 2003 $2,320,041.95
9 2004 $4,843,745.40
9 2005 $10,203.84
9 $10,012,406.26
10 2002 $608,310.61
10 2003 $769,737.46
10 2004 $2,365,129.58
10 2005 $4,664.67
10 $3,747,842.32
$32,441,341.06
(46 row(s) affected)
select t.CalendarQuarter, salter.SalesTerritoryCountry as SALES_REGION, ROUND(sum(final_amount), 2)
AS final_amount
from dbo.SALES_TERRITORY_DIM salter inner join dbo.sales_fact sal
on salter.SalesTerritoryKey = sal.TERRITORY_KEY
inner join dbo.TIME_DIM t
on sal.Time_ID = t.TimeKey
where t.CalendarQuarter is not null
group by CUBE(t.CalendarQuarter,salter.SalesTerritoryCountry);
CalendarQuarter SALES_REGION final_amount
1 Australia $ 2,658,668.77
2 Australia $ 2,887,612.75
3 Australia $ 1,965,983.09
4 Australia $ 2,500,141.66
Australia $ 10,012,406.26
1 Canada $ 656,549.83
2 Canada $ 668,041.62
3 Canada $ 419,995.24
4 Canada $ 440,932.20
Canada $ 2,185,518.90
1 France $ 718,900.01
2 France $ 943,563.82
3 France $ 580,171.70
4 France $ 679,004.30
France $ 2,921,639.83
1 Germany $ 815,826.11
2 Germany $ 1,058,738.81
3 Germany $ 580,568.72
4 Germany $ 743,081.76
Germany $ 3,198,215.39
1 United
Kingdom
$ 984,242.73
2 United
Kingdom
$ 1,036,699.23
3 United
Kingdom
$ 776,231.37
4 United
Kingdom
$ 950,668.99
United $ 3,747,842.32
Kingdom
1 United
States
$ 2,441,002.12
2 United
States
$ 3,432,570.22
3 United
States
$ 1,915,369.50
4 United
States
$ 2,586,776.52
United
States
$ 10,375,718.35
$ 32,441,341.06
1 $ 8,275,189.57
2 $ 10,027,226.44
3 $ 6,238,319.62
4 $ 7,900,605.43
IF OBJECT_ID ('dbo.customers', 'V') IS NOT NULL
DROP VIEW dbo.customers ;
GO
CREATE VIEW dbo.customers WITH ENCRYPTION
AS
SELECT C.CUSTOMERKEY AS CUST_NO, C.FirstName + ','+C.LASTNAME AS CUSTOMER_Name, G.City, G.PostalCode, G.StateProvinceCode AS STATE_CODE, G.StateProvinceName AS STATE_NAME
, G.CountryRegionCode AS COUNTRY_CODE, G.EnglishCountryRegionName AS COUNTRY_NAME
FROM DBO.DimCustomer C
INNER JOIN
DBO.DimGeography G
ON C.GeographyKey = G.GeographyKey
with check
use AdventureWorksDW
use AdventureWorksDW
select top(40)cust_no, upper (customer_name) as Customer_Name, city, postalcode, state_code, state_name, country_name, country_code from dbo.customers;
cust_no Customer_Name city postalcode state_code state_name country_name country_code
11000 JON,YANG Rockhampton 4700 QLD Queensland Australia AU
11001 EUGENE,HUANG Seaford 3198 VIC Victoria Australia AU
11002 RUBEN,TORRES Hobart 7001 TAS Tasmania Australia AU
11003 CHRISTY,ZHU North Ryde 2113 NSW New South
Wales
Australia AU
11004 ELIZABETH,JOHNSON Wollongong 2500 NSW New South
Wales
Australia AU
11005 JULIO,RUIZ East
Brisbane
4169 QLD Queensland Australia AU
11006 JANET,ALVAREZ Matraville 2036 NSW New South
Wales
Australia AU
11007 MARCO,MEHTA Warrnambool 3280 VIC Victoria Australia AU
11008 ROB,VERHOFF Bendigo 3550 VIC Victoria Australia AU
11009 SHANNON,CARLSON Hervey Bay 4655 QLD Queensland Australia AU
11010 JACQUELYN,SUAREZ East
Brisbane
4169 QLD Queensland Australia AU
11011 CURTIS,LU East
Brisbane
4169 QLD Queensland Australia AU
11012 LAUREN,WALKER Bremerton 98312 WA Washington United
States
US
11013 IAN,JENKINS Lebanon 97355 OR Oregon United
States
US
11014 SYDNEY,BENNETT Redmond 98052 WA Washington United
States
US
11015 CHLOE,YOUNG Burbank 91502 CA California United
States
US
11016 WYATT,HILL Imperial
Beach
91932 CA California United
States
US
11017 SHANNON,WANG Sunbury 3429 VIC Victoria Australia AU
11018 CLARENCE,RAI Bendigo 3550 VIC Victoria Australia AU
11019 LUKE,LAL Langley V3A 4R2 BC British
Columbia
Canada CA
11020 JORDAN,KING Metchosin V9 BC British
Columbia
Canada CA
11021 DESTINY,WILSON Beaverton 97005 OR Oregon United
States
US
11022 ETHAN,ZHANG Bellingham 98225 WA Washington United
States
US
11023 SETH,EDWARDS Bellflower 90706 CA California United
States
US
11024 RUSSELL,XIE Concord 94519 CA California United
States
US
11025 ALEJANDRO,BECK Hawthorne 4171 QLD Queensland Australia AU
11026 HAROLD,SAI Goulburn 2580 NSW New South
Wales
Australia AU
11027 JESSIE,ZHAO Warrnambool 3280 VIC Victoria Australia AU
11028 JILL,JIMENEZ St.
Leonards
2065 NSW New South
Wales
Australia AU
11029 JIMMY,MORENO Bendigo 3550 VIC Victoria Australia AU
11030 BETHANY,YUAN Cloverdale 6105 SA South
Australia
Australia AU
11031 THERESA,RAMOS Matraville 2036 NSW New South
Wales
Australia AU
11032 DENISE,STONE Melbourne 3000 VIC Victoria Australia AU
11033 JAIME,NATH Milsons
Point
2061 NSW New South
Wales
Australia AU
11034 EBONY,GONZALEZ North
Sydney
2055 NSW New South
Wales
Australia AU
11035 WENDY,DOMINGUEZ Cranbourne 3977 VIC Victoria Australia AU
11036 JENNIFER,RUSSELL National
City
91950 CA California United
States
US
11037 CHLOE,GARCIA Cliffside V8Y 1L1 BC British
Columbia
Canada CA
11038 DIANA,HERNANDEZ Lavender
Bay
2060 NSW New South
Wales
Australia AU
11039 MARC,MARTIN Wollongong 2500 NSW New South
Wales
Australia AU
use AdventureWorksDW
IF OBJECT_ID ('dbo.customers1', 'V') IS NOT NULL
DROP VIEW dbo.customers1 ;
GO
CREATE VIEW dbo.customers1 WITH ENCRYPTION
AS
SELECT C.CUSTOMERKEY AS CUST_NO, C.FirstName + ','+C.LASTNAME AS CUSTOMER_Name, G.City, G.PostalCode, G.StateProvinceCode AS STATE_CODE, G.StateProvinceName AS STATE_NAME
, G.CountryRegionCode AS COUNTRY_CODE, G.EnglishCountryRegionName AS COUNTRY_NAME,
t.SalesTerritoryCountry as Sales_Territory_Country, t.SalesTerritoryGroup as Sales_Territory_Group,
t.SalesTerritoryRegion as Sales_Territory_Region
FROM DBO.DimCustomer C
INNER JOIN
DBO.DimGeography G
ON C.GeographyKey = G.GeographyKey
inner join dbo.DimSalesTerritory t
on g.SalesTerritoryKey = t.SalesTerritoryKey
with check option;
use AdventureWorksDW
select top(34) * from dbo.customers1 ;
CUST_N
O
CUSTOMER_Name City PostalCod
e
STATE_COD
E
STATE_NAM
E
COUNTRY_COD
E
COUNTRY_NAM
E
Sales_Territory_Countr
y
Sales_Territory_Grou
p
Sales_Territory_Regio
n
11000 Jon,Yang Rockhampto
n
4700 QLD Queenslan
d
AU Australia Australia Pacific Australia
11001 Eugene,Huang Seaford 3198 VIC Victoria AU Australia Australia Pacific Australia
11002 Ruben,Torres Hobart 7001 TAS Tasmania AU Australia Australia Pacific Australia
11003 Christy,Zhu North Ryde 2113 NSW New South
Wales
AU Australia Australia Pacific Australia
11004 Elizabeth,Johnso
n
Wollongong 2500 NSW New South
Wales
AU Australia Australia Pacific Australia
11005 Julio,Ruiz East
Brisbane
4169 QLD Queenslan
d
AU Australia Australia Pacific Australia
11006 Janet,Alvarez Matraville 2036 NSW New South
Wales
AU Australia Australia Pacific Australia
11007 Marco,Mehta Warrnamboo
l
3280 VIC Victoria AU Australia Australia Pacific Australia
11008 Rob,Verhoff Bendigo 3550 VIC Victoria AU Australia Australia Pacific Australia
11009 Shannon,Carlson Hervey Bay 4655 QLD Queenslan
d
AU Australia Australia Pacific Australia
11010 Jacquelyn,Suarez East
Brisbane
4169 QLD Queenslan
d
AU Australia Australia Pacific Australia
11011 Curtis,Lu East
Brisbane
4169 QLD Queenslan
d
AU Australia Australia Pacific Australia
11012 Lauren,Walker Bremerton 98312 WA Washingto
n
US United
States
United States North America Northwest
11013 Ian,Jenkins Lebanon 97355 OR Oregon US United
States
United States North America Northwest
11014 Sydney,Bennett Redmond 98052 WA Washingto
n
US United
States
United States North America Northwest
11015 Chloe,Young Burbank 91502 CA Californi
a
US United
States
United States North America Southwest
11016 Wyatt,Hill Imperial
Beach
91932 CA Californi
a
US United
States
United States North America Southwest
11017 Shannon,Wang Sunbury 3429 VIC Victoria AU Australia Australia Pacific Australia
11018 Clarence,Rai Bendigo 3550 VIC Victoria AU Australia Australia Pacific Australia
11019 Luke,Lal Langley V3A 4R2 BC British
Columbia
CA Canada Canada North America Canada
11020 Jordan,King Metchosin V9 BC British
Columbia
CA Canada Canada North America Canada
11021 Destiny,Wilson Beaverton 97005 OR Oregon US United
States
United States North America Northwest
11022 Ethan,Zhang Bellingham 98225 WA Washingto
n
US United
States
United States North America Northwest
11023 Seth,Edwards Bellflower 90706 CA Californi
a
US United
States
United States North America Southwest
11024 Russell,Xie Concord 94519 CA Californi
a
US United
States
United States North America Southwest
11025 Alejandro,Beck Hawthorne 4171 QLD Queenslan
d
AU Australia Australia Pacific Australia
11026 Harold,Sai Goulburn 2580 NSW New South
Wales
AU Australia Australia Pacific Australia
11027 Jessie,Zhao Warrnamboo
l
3280 VIC Victoria AU Australia Australia Pacific Australia
11028 Jill,Jimenez St.
Leonards
2065 NSW New South
Wales
AU Australia Australia Pacific Australia
11029 Jimmy,Moreno Bendigo 3550 VIC Victoria AU Australia Australia Pacific Australia
11030 Bethany,Yuan Cloverdale 6105 SA South
Australia
AU Australia Australia Pacific Australia
11031 Theresa,Ramos Matraville 2036 NSW New South
Wales
AU Australia Australia Pacific Australia
11032 Denise,Stone Melbourne 3000 VIC Victoria AU Australia Australia Pacific Australia
11033 Jaime,Nath Milsons
Point
2061 NSW New South
Wales
AU Australia Australia Pacific Australia
select c.CustomerKey as cust_no, c.FirstName + ',' + c.lastname as customer_name, f.SalesOrderNumber,
f.UnitPrice, f.Freight, f.OrderQuantity, f.DiscountAmount, f.UnitPriceDiscountPct
, f.UnitPrice * f.OrderQuantity + f.Freight - f.UnitPriceDiscountPct as Final_Amount, f.ProductKey
into customer_records
from FactInternetSales f right outer join
dbo.DimCustomer c
on
c.CustomerKey = f.CustomerKey
(60398 row(s) affected)
use AdventureWorksDW
select top(15)cust_no, customer_name, SalesOrderNumber,
UnitPrice,Freight, OrderQuantity, DiscountAmount,UnitPriceDiscountPct
, Final_Amount,ProductKey
from customer_records
cust_no customer_name SalesOrderNumber UnitPrice Freight OrderQuantity DiscountAmount UnitPriceDiscountPct Final_Amount ProductKey
11003 Christy,Zhu SO43701 $3,399.99 $85.00 1 $0.00 $0.00 $3,484.99 346
14501 Ruben,Prasad SO43700 $699.10 $17.48 1 $0.00 $0.00 $716.58 336
21768 Cole,Watson SO43697 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 310
25863 Sydney,Wright SO43699 $3,399.99 $85.00 1 $0.00 $0.00 $3,484.99 346
28389 Rachael,Martinez SO43698 $3,399.99 $85.00 1 $0.00 $0.00 $3,484.99 346
11005 Julio,Ruiz SO43704 $3,374.99 $84.37 1 $0.00 $0.00 $3,459.36 351
11011 Curtis,Lu SO43705 $3,399.99 $85.00 1 $0.00 $0.00 $3,484.99 344
16624 Albert,Alvarez SO43703 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 310
27645 Colin,Anand SO43702 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 311
16351 Martha,Xu SO43709 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 313
16517 Katrina,Raji SO43710 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 314
20042 Brad,Deng SO43708 $699.10 $17.48 1 $0.00 $0.00 $716.58 330
27616 Emma,Brown SO43707 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 312
27621 Edward,Brown SO43706 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 312
13513 Abigail,Henderson SO43712 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 311
USE AdventureWorks
SELECT
TOP(20)C.ContactID ,C.Title, C.FirstName + '.'+ C.MiddleName +'.' +C.LastName AS EMPLOYEE, SUBSTRING(C.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(C.Phone,-7,11)AS AREA_CODE, C.Phone,
E.Title as Job_Title, E.Gender,CONVERT(DATE, E.BirthDate)AS BIRTH_DAY, DATEDIFF(YY, E.BirthDate, CURRENT_TIMESTAMP) AS AGE, CONVERT (DATE,E.HireDate) AS HIRE_DATE,
DATEDIFF(YY, E.HIREDATE, CURRENT_TIMESTAMP) AS NUM_YERS_EMPLOYEED, E.ManagerID
, (E.EMPLOYEEID) AS EMP_ID
FROM
Person.Contact C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E .ContactID
ContactID Title EMPLOYEE PHONE_NUMBER AREA_CODE Phone Job_Title Gender BIRTH_DAY AGE HIRE_DATE NUM_YERS
_EMPLOYEED
Manager
ID
EMP_ID
1209 Mr Guy.R.Gilbert 555-0195 320 320-555-
0195
Production
Technician -
WC60
M 5/15/1972 39 7/31/1996 15 16 1
1030 Mr Kevin.F.Brown 555-0189 150 150-555-
0189
Marketing
Assistant
M 6/3/1977 34 2/26/1997 14 6 2
1002 555-0187 212 212-555-
0187
Engineering
Manager
M 12/13/1964 47 12/12/199
7
14 12 3
1290 555-0100 612 612-555-
0100
Senior Tool
Designer
M 1/23/1965 46 1/5/1998 13 3 4
1009 Mr Thierry.B.D'Hers 555-0183 168 168-555-
0183
Tool
Designer
M 8/29/1949 62 1/11/1998 13 263 5
1028 Mr David.M.Bradley 555-0172 913 913-555-
0172
Marketing
Manager
M 4/19/1965 46 1/20/1998 13 109 6
1070 Ms JoLynn.M.Dobney 555-0145 903 903-555-
0145
Production
Supervisor -
WC60
F 2/16/1946 65 1/26/1998 13 21 7
1071 Mrs Ruth.Ann.Ellerbrock 555-0130 145 145-555-
0130
Production
Technician -
WC10
F 7/6/1946 65 2/6/1998 13 185 8
1005 Mrs Gail.A.Erickson 555-0139 849 849-555-
0139
Design
Engineer
F 10/29/1942 69 2/6/1998 13 3 9
1076 Mr Barry.K.Johnson 555-0180 206 206-555-
0180
Production
Technician -
WC10
M 4/27/1946 65 2/7/1998 13 185 10
1006 Mr Jossef.H.Goldberg 555-0189 122 122-555-
0189
Design
Engineer
M 4/11/1949 62 2/24/1998 13 3 11
1001 Ms Terri.Lee.Duffy 555-0175 819 819-555-
0175
Vice
President of
Engineering
F 9/1/1961 50 3/3/1998 13 109 12
1072 Mr Sidney.M.Higa 555-0189 424 424-555-
0189
Production
Technician -
WC10
M 10/1/1946 65 3/5/1998 13 185 13
1067 Mr Taylor.R.Maxwell 555-0165 508 508-555-
0165
Production
Supervisor -
WC50
M 5/3/1946 65 3/11/1998 13 21 14
1073 Mr Jeffrey.L.Ford 555-0185 984 984-555-
0185
Production
Technician -
WC10
M 8/12/1946 65 3/23/1998 13 185 15
1068 Ms Jo.A.Brown 555-0129 632 632-555-
0129
Production
Supervisor -
WC60
F 11/9/1946 65 3/30/1998 13 21 16
1074 Mrs Doris.M.Hartwig 555-0150 328 328-555-
0150
Production
Technician -
WC10
F 5/6/1946 65 4/11/1998 13 185 17
1069 Mr John.T.Campbell 555-0113 435 435-555-
0113
Production
Supervisor -
WC60
M 9/8/1946 65 4/18/1998 13 21 18
1075 Mrs Diane.R.Glimp 555-0151 202 202-555-
0151
Production
Technician -
WC10
F 4/30/1946 65 4/29/1998 13 185 19
1129 Mr Steven.T.Selikoff 555-0114 925 925-555-
0114
Production
Technician -
WC30
M 6/15/1967 44 1/2/1999 12 173 20
iF OBJECT_ID ('EMP_1', 'V') IS NOT NULL
DROP VIEW EMP_1 ;
GO
CREATE VIEW EMP_1 WITH SCHEMABINDING
AS
SELECT C.ContactID ,C.Title, C.FirstName + '.'+ C.MiddleName +'.' +C.LastName AS EMPLOYEE, SUBSTRING(C.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(C.Phone,-7,11)AS AREA_CODE, C.Phone,
E.Title AS JOB_TITLE
, E.Gender,CONVERT(DATE, E.BirthDate)AS BIRTH_DAY, DATEDIFF(YY, E.BirthDate, CURRENT_TIMESTAMP) AS AGE, CONVERT (DATE,E.HireDate) AS HIRE_DATE,
DATEDIFF(YY, E.HIREDATE, CURRENT_TIMESTAMP) AS NUM_YERS_EMPLOYEED, E.ManagerID, E.MaritalStatus
, (E.EMPLOYEEID) AS EMP_ID
FROM PERSON.Contact C
INNER JOIN
HumanResources.Employee E
ON
C.ContactID = E.ContactID
WHERE C.FirstName + '.'+ C.MiddleName +'.' +C.LastName IS NOT NULL
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024)
WITH CHECK OPTION
UPDATE dbo.EMP_1
SET TITLE = 'Mr'
where gender = 'M'
/****** Script for SelectTopNRows command from SSMS ******/
SELECT TOP 12 [ContactID]
,[Title]
,[EMPLOYEE]
,[PHONE_NUMBER]
,[AREA_CODE]
,[Phone]
,[JOB_TITLE]
,[Gender]
,[BIRTH_DAY]
,[AGE]
,[HIRE_DATE]
,[NUM_YERS_EMPLOYEED]
,[ManagerID]
,[MaritalStatus]
,[EMP_ID]
FROM [AdventureWorks].[dbo].[EMP_1]
WHERE GENDER = 'M'
(12 row(s) affected)
UPDATE dbo.EMP_1
SET TITLE = 'Mrs'
OUTPUT DELETED.TITLE AS OLDTITLE, INSERTED.TITLE AS NEWTITLE
where Gender = 'F'
AND MaritalStatus = 'M'
OLDTITLE NEWTITLE
-------- --------
NULL Mrs
NULL Mrs
Ms. Mrs
Ms. Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
Ms. Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
ContactID Title EMPLOYEE PHONE_NUMBER AREA_CODE Phone JOB_TITLE Gender BIRTH_DAY AGE HIRE_DATE NUM_YERS_EMPLOYEED ManagerID MaritalStatus EMP_ID
1209 Mr Guy.R.Gilbert 555-0195 320 320-555-
0195
Production
Technician -
WC60
M 5/15/1972 39 7/31/1996 15 16 M 1
1030 Mr Kevin.F.Brown 555-0189 150 150-555-
0189
Marketing
Assistant
M 6/3/1977 34 2/26/1997 14 6 S 2
1009 Mr Thierry.B.D'Hers 555-0183 168 168-555-
0183
Tool Designer M 8/29/1949 62 1/11/1998 13 263 M 5
1028 Mr David.M.Bradley 555-0172 913 913-555-
0172
Marketing
Manager
M 4/19/1965 46 1/20/1998 13 109 S 6
1076 Mr Barry.K.Johnson 555-0180 206 206-555-
0180
Production
Technician -
WC10
M 4/27/1946 65 2/7/1998 13 185 S 10
1006 Mr Jossef.H.Goldberg 555-0189 122 122-555-
0189
Design
Engineer
M 4/11/1949 62 2/24/1998 13 3 M 11
1072 Mr Sidney.M.Higa 555-0189 424 424-555-
0189
Production
Technician -
WC10
M 10/1/1946 65 3/5/1998 13 185 M 13
1067 Mr Taylor.R.Maxwell 555-0165 508 508-555-
0165
Production
Supervisor -
WC50
M 5/3/1946 65 3/11/1998 13 21 M 14
1073 Mr Jeffrey.L.Ford 555-0185 984 984-555-
0185
Production
Technician -
WC10
M 8/12/1946 65 3/23/1998 13 185 S 15
1069 Mr John.T.Campbell 555-0113 435 435-555-
0113
Production
Supervisor -
WC60
M 9/8/1946 65 4/18/1998 13 21 M 18
1129 Mr Steven.T.Selikoff 555-0114 925 925-555-
0114
Production
Technician -
WC30
M 6/15/1967 44 1/2/1999 12 173 M 20
1231 Mr Peter.J.Krebs 555-0196 913 913-555-
0196
Production
Control
Manager
M 12/4/1972 39 1/2/1999 12 148 M 21
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
NULL Mrs
(79 row(s) affected)
UPDATE dbo.EMP_1
SET TITLE = 'Ms'
OUTPUT DELETED.TITLE AS OLDTITLE, INSERTED.TITLE AS NEWTITLE
where MaritalStatus = 'S'
AND GENDER = 'F'
OLDTITLE NEWTITLE
-------- --------
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
Ms Ms
(32 row(s) affected)
SELECT TOP(30)CONTACTID, GENDER, MARITALSTATUS, TITLE, EMPLOYEE
FROM dbo.EMP_1
CONTACTID GENDER MARITALSTATUS TITLE EMPLOYEE
1209 M M Mr Guy.R.Gilbert
1030 M S Mr Kevin.F.Brown
1009 M M Mr Thierry.B.D'Hers
1028 M S Mr David.M.Bradley
1070 F S Ms JoLynn.M.Dobney
1071 F M Mrs Ruth.Ann.Ellerbrock
1005 F M Mrs Gail.A.Erickson
1076 M S Mr Barry.K.Johnson
1006 M M Mr Jossef.H.Goldberg
1001 F S Ms Terri.Lee.Duffy
1072 M M Mr Sidney.M.Higa
1067 M M Mr Taylor.R.Maxwell
1073 M S Mr Jeffrey.L.Ford
1068 F S Ms Jo.A.Brown
1074 F M Mrs Doris.M.Hartwig
1069 M M Mr John.T.Campbell
1075 F M Mrs Diane.R.Glimp
1129 M M Mr Steven.T.Selikoff
1231 M M Mr Peter.J.Krebs
1172 M S Mr Stuart.V.Munson
1173 M S Mr Greg.F.Alderson
1113 M S Mr David.N.Johnson
1054 M S Mr Zheng.W.Mu
1097 M M Mr Ivo.William.Salmre
1156 M S Mr Paul.B.Komosinski
1258 M S Mr Ashvini.R.Sharma
1199 M M Mr Kendall.C.Keil
1242 F M Mrs Paula.M.Barreto de
Mattos
1140 M S Mr Alejandro.E.McGuel
1122 M S Mr Garrett.R.Young
(30 row(s) affected)
USE MSSQL
CREATE TABLE CUSTOMER
(CUST_NO INT IDENTITY(02348, 112) CONSTRAINT CUSTCUST_NO_PK PRIMARY KEY
, FIRST_NAME NVARCHAR(33) CONSTRAINT CUSTFNAME_NN NOT NULL
, LAST_NAME NVARCHAR(25) CONSTRAINT CUSTLASTNAME_NN NOT NULL
,GENDER CHAR(10) CONSTRAINT CUSTGENDER_NN NOT NULL
,CUST_ADDRESS NVARCHAR(55) CONSTRAINT CUSTCUST_ADD_NN NOT NULL
, CITY NVARCHAR(40) CONSTRAINT CUSTCITY_NN NOT NULL
, CUST_STATE NVARCHAR(25) CONSTRAINT CUSTSTATE_CK CHECK (CUST_STATE iN('IL', 'DC', 'CA', 'TX', 'AZ', 'MD', 'GA', 'il','dc','ca','tx','az', 'md','ga'))
, ZIP_CODE INT
)
USE MSSQL
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER)
values ('Jackie', 'Brown', '1818 S Washington BLVD SE APT 227', 'Washington', 'DC', 20021, 'Female');
CREATE TRIGGER CUSTOMERS
ON
dbo.customer
instead of insert
as print
'The data has been sucessfully inserted to the database.';
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER)
values ('Sandy', 'Jack', '4040 N Washington BLVD SW ', 'Washington', 'DC',20032, 'Male'),
('Christopher', 'McLean', '24 N.Illinios Ave NE', 'Washington', 'DC',20011, 'Male'),
('RoseMary', 'BlueGrass', '20 S Capitol RD SE', 'Washington', 'DC',20018, 'Female'),
('Cassandra', 'Morgan', '1010 W New York Ave NW ', 'Washington', 'DC',20030, 'Female'),
('Diana', 'Mark', '85 S A ST SW', 'Washington', 'DC',20059, 'Female');
The data has been sucessfully inserted to the database.
(5 row(s) affected)
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER)
values ('Jayson', 'Alex', '1830 S Cider BLVD NW', 'Washington', 'DC', 20032, 'Male'),
('JAEGERS', 'SHU', '40 S Washington BLVD SW ', 'Washington', 'DC', 20011, 'Female'),
('Nicholas', 'Nicholas', '24 N California Ave NE Apt 4D', 'Washington', 'DC',20018, 'Male'),
('Liz', 'Steward', '120 S Ohio Ave SE', 'Washington', 'DC',20022, 'Female'),
('Austin', 'Martin', '11 W New Mexico Ave NW APT 21B', 'Washington', 'DC',20030, 'female'),
('LOPEZ', 'PALISBO', '85 S A ST SW', 'Washington', 'DC',20059, 'Male');
The data has been sucessfully inserted to the database.
(6 row(s) affected)
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER)
values ('DEIDRA', 'SYDNEY', '24 18th ST SE ', 'Washington', 'DC',20017, 'Female'),
('EAGLEN', 'EASTON', '120 S Jackson Ave SE', 'Washington','DC',20022, 'Female'),
('SHANDRA', 'TABOR', '101 W Georgia Ave NW ', 'Washington', 'DC',20040, 'female'),
('DOROTHY', 'Paul-Walker', '35 E Delaware Ave SE', 'Washington', 'DC',20052, 'female'),
('DEINES', 'JOHN', '11 W Georgia Ave', 'Silver Springs', 'MD',20901 , 'Female'),
('WALTER', 'TIMOTHY', '35 E Pine Grove Ave NE', 'Washington', 'DC', 20052, 'Male'),
('JONATHAN', 'BRUCE', '10 justice Drive SW' , 'Washington',' DC', 20040, 'Male');
The data has been sucessfully inserted to the database.
(7 row(s) affected)
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER)
values ('MILTON', 'ROLAND', '35 W Union Drive NE', 'Washington', 'DC',20051,'Male');
The data has been sucessfully inserted to the database.
(1 row(s) affected)
USE MSSQL
SELECT * FROM CUSTOMER
CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY
CUST_STATE ZIP_CODE
----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- -----------------------------
----------- ------------------------- -----------
2348 Jackie Brown Female 1818 S Washington BLVD SE APT 227 Washington
DC 20021
(1 row(s) affected)
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER)
values ('Sandy', 'Jack', '4040 N Washington BLVD SW ', 'Washington', 'DC',20032, 'Male'),
('Christopher', 'McLean', '24 N.Illinios Ave NE', 'Washington', 'DC',20011, 'Male'),
('RoseMary', 'BlueGrass', '20 S Capitol RD SE', 'Washington', 'DC',20018, 'Female'),
('Cassandra', 'Morgan', '1010 W New York Ave NW ', 'Washington', 'DC',20030, 'Female'),
('Diana', 'Mark', '85 S A ST SW', 'Washington', 'DC',20059, 'Female');
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER)
values ('Jayson', 'Alex', '1830 S Cider BLVD NW', 'Washington', 'DC', 20032, 'Male'),
('JAEGERS', 'SHU', '40 S Washington BLVD SW ', 'Washington', 'DC', 20011, 'Female'),
('Nicholas', 'Nicholas', '24 N California Ave NE Apt 4D', 'Washington', 'DC',20018, 'Male'),
('Liz', 'Steward', '120 S Ohio Ave SE', 'Washington', 'DC',20022, 'Female'),
('Austin', 'Martin', '11 W New Mexico Ave NW APT 21B', 'Washington', 'DC',20030, 'female'),
('LOPEZ', 'PALISBO', '85 S A ST SW', 'Washington', 'DC',20059, 'Male');
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER)
values ('MILTON', 'ROLAND', '35 W Union Drive NE', 'Washington', 'DC',20051,'Male');
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER)
values ('FREDDIE', 'WADE', '2020 Rosevelt BLVD SW', 'Washington', 'DC',20049, 'Male'),
('ZADRA', 'WALCUTT', '25 E Balitmore Pk', 'Silver Springs', 'MD', 20901 , 'Female'),
('TERRENCE', 'KENT', '101 W Georgia Ave Apt 18B', 'Silver Springs', 'MD',20901, 'Male'),
('PHYLLIS', 'SERGIO', '45 Steveson Drv Apt 5G','Silver Springs', 'MD',20901, 'Female'),
('WALCH', 'GENE', '80 Baker BLVD', 'Silver Springs', 'DC',20049, 'Male');
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER)
values ('BRETT', 'WALCUTT', '25 E Balitmore Pk', 'Silver Springs', 'MD', 20901 , 'Female'),
('LABEAU', 'KENT', '50 W Ocean Drive Ave Apt 18B', 'Silver Springs', 'MD',20901, 'Male'),
('SARA', 'LABBADIA', '45 Steveson Drv Apt 5G','Silver Springs', 'MD',20901, 'Female'),
('ANDREA', 'LESTER', '12 St.Paul St', 'Oxon Hill ', 'MD', 20745 ,' Female'),
('CHARLIE', 'Choice', '21 Adams BLVD', 'Oxon Hill', 'MD',20745, 'Male'),
('REGINALD', 'ANGEL', '25 E Washington Pk', 'Oxon Hil', 'MD', 20745 , 'Male');
SELECT * FROM CUSTOMER
CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY CUST_STATE ZIP_CODE
2348 Jackie Brown Female 1818 S Washington BLVD SE APT 227 Washington DC 20021
2460 Sandy Jack Male 4040 N Washington BLVD SW Washington DC 20032
2572 Christopher McLean Male 24 N.Illinios Ave NE Washington DC 20011
2684 RoseMary BlueGrass Female 20 S Capitol RD SE Washington DC 20018
2796 Cassandra Morgan Female 1010 W New York Ave NW Washington DC 20030
2908 Diana Mark Female 85 S A ST SW Washington DC 20059
3020 Jayson Alex Male 1830 S Cider BLVD NW Washington DC 20032
3132 JAEGERS SHU Female 40 S Washington BLVD SW Washington DC 20011
3244 Nicholas Nicholas Male 24 N California Ave NE Apt 4D Washington DC 20018
3356 Liz Steward Female 120 S Ohio Ave SE Washington DC 20022
3468 Austin Martin Female 11 W New Mexico Ave NW APT 21B Washington DC 20030
3580 LOPEZ PALISBO Male 85 S A ST SW Washington DC 20059
4476 MILTON ROLAND Male 35 W Union Drive NE Washington DC 20051
4588 FREDDIE WADE Male 2020 Rosevelt BLVD SW Washington DC 20049
4700 ZADRA WALCUTT Female 25 E Balitmore Pk Silver Springs MD 20901
4812 TERRENCE KENT Male 101 W Georgia Ave Apt 18B Silver Springs MD 20901
4924 PHYLLIS SERGIO Female 45 Steveson Drv Apt 5G Silver Springs MD 20901
5036 WALCH GENE Male 80 Baker BLVD Silver Springs DC 20049
5148 BRETT WALCUTT Female 25 E Balitmore Pk Silver Springs MD 20901
5260 LABEAU KENT Male 50 W Ocean Drive Ave Apt 18B Silver Springs MD 20901
5372 SARA LABBADIA Female 45 Steveson Drv Apt 5G Silver Springs MD 20901
5484 ANDREA LESTER Female 12 St.Paul St Oxon Hill MD 20745
5596 CHARLIE Choice Male 21 Adams BLVD Oxon Hill MD 20745
5708 REGINALD ANGEL Male 25 E Washington Pk Oxon Hil MD 20745
DELETE DBO.CUSTOMER;
ALTER TRIGGER [dbo].[CUSTOMERS]
ON
[dbo].[CUSTOMER]
AFTER INSERT
as print
'DATA ERROR PLEASE RE-INSERT';
ROLLBACK TRAN;
USE [MSSQL]
GO
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER)
values('washington', 'Wells', '20 Lakeshore Driv ApT 34C', 'Chicago', 'IL', 60660, 'Male'),
('TED', 'SERGIO', '1818 N Paulina','Chicago', 'IL',60632, 'Male'),
('JULIA', 'QUNICY', '8O Chicago RD Apt 227', 'Chicago', 'IL',60633, 'Female'),
('EMILY', 'KELLY', '12 S Kedize Apt 33GH', 'Chicago', 'IL', 606421 , 'Female'),
('CLAYTON', 'Cliford', '20 Lasalle Street Apt 40b ', 'Chicago', 'IL', 60602, 'Male'),
('RUBY', 'JESSIE', '2020 S State Street','Chicago', 'IL', 60639, 'Female'),
('CLAUDE', 'JAMIE', '12 S Dearbon Apt 29 H', 'Chicago', 'IL', 606421 , 'Male'),
('MARILYN', 'FERNANDO', '12 Jane Adams Blvd', 'Chicago', 'IL', 60604, 'Female'),
('NEIL', 'PAVLIKOWSKI', '20 N State Street','Chicago', 'IL', 60639, 'Female'),
('PAVLICK', 'JAVIER', '200 W Howard Ave Apt 40b ', 'Chicago', 'IL', 606003, 'Male'),
('LOUISE', 'JESSIE', '40 S Abbott Street Apt 18H','Chicago', 'IL', 60629, 'Female');
DATA ERROR PLEASE RE-INSERT
Msg 3609, Level 16, State 1, Line 2
The transaction ended in the trigger. The batch has been aborted.
SELECT * FROM CUSTOMER;
NO ROWS
DROP TRIGGER CUSTOMERS;
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER)
values('washington', 'Wells', '20 Lakeshore Driv ApT 34C', 'Chicago', 'IL', 60660, 'Male'),
('TED', 'SERGIO', '1818 N Paulina','Chicago', 'IL',60632, 'Male'),
('JULIA', 'QUNICY', '8O Chicago RD Apt 227', 'Chicago', 'IL',60633, 'Female'),
('EMILY', 'KELLY', '12 S Kedize Apt 33GH', 'Chicago', 'IL', 606421 , 'Female'),
('CLAYTON', 'Cliford', '20 Lasalle Street Apt 40b ', 'Chicago', 'IL', 60602, 'Male'),
('RUBY', 'JESSIE', '2020 S State Street','Chicago', 'IL', 60639, 'Female'),
('CLAUDE', 'JAMIE', '12 S Dearbon Apt 29 H', 'Chicago', 'IL', 606421 , 'Male'),
('MARILYN', 'FERNANDO', '12 Jane Adams Blvd', 'Chicago', 'IL', 60604, 'Female'),
('NEIL', 'PAVLIKOWSKI', '20 N State Street','Chicago', 'IL', 60639, 'Female'),
('PAVLICK', 'JAVIER', '200 W Howard Ave Apt 40b ', 'Chicago', 'IL', 606003, 'Male'),
('LOUISE', 'JESSIE', '40 S Abbott Street Apt 18H','Chicago', 'IL', 60629, 'Female');
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER)
OUTPUT INSERTED.*
values ('Sandy', 'Jack', '4040 N Washington BLVD SW ', 'Washington', 'DC',20032, 'Male'),
('Christopher', 'McLean', '24 N.Illinios Ave NE', 'Washington', 'DC',20011, 'Male'),
('RoseMary', 'BlueGrass', '20 S Capitol RD SE', 'Washington', 'DC',20018, 'Female'),
('Cassandra', 'Morgan', '1010 W New York Ave NW ', 'Washington', 'DC',20030, 'Female'),
('Diana', 'Mark', '85 S A ST SW', 'Washington', 'DC',20059, 'Female');
CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY
CUST_STATE ZIP_CODE
----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- -----------------------------
----------- ------------------------- -----------
10860 Sandy Jack Male 4040 N Washington BLVD SW Washington
DC 20032
10972 Christopher McLean Male 24 N.Illinios Ave NE Washington
DC 20011
11084 RoseMary BlueGrass Female 20 S Capitol RD SE Washington
DC 20018
11196 Cassandra Morgan Female 1010 W New York Ave NW Washington
DC 20030
11308 Diana Mark Female 85 S A ST SW Washington
DC 20059
(5 row(s) affected)
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER)
OUTPUT INSERTED.*
values ('Jayson', 'Alex', '1830 S Cider BLVD NW', 'Washington', 'DC', 20032, 'Male'),
('JAEGERS', 'SHU', '40 S Washington BLVD SW ', 'Washington', 'DC', 20011, 'Female'),
('Nicholas', 'Nicholas', '24 N California Ave NE Apt 4D', 'Washington', 'DC',20018, 'Male'),
('Liz', 'Steward', '120 S Ohio Ave SE', 'Washington', 'DC',20022, 'Female'),
('Austin', 'Martin', '11 W New Mexico Ave NW APT 21B', 'Washington', 'DC',20030, 'female'),
('LOPEZ', 'PALISBO', '85 S A ST SW', 'Washington', 'DC',20059, 'Male');
CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY
CUST_STATE ZIP_CODE
----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- -----------------------------
----------- ------------------------- -----------
11420 Jayson Alex Male 1830 S Cider BLVD NW Washington
DC 20032
11532 JAEGERS SHU Female 40 S Washington BLVD SW Washington
DC 20011
11644 Nicholas Nicholas Male 24 N California Ave NE Apt 4D Washington
DC 20018
11756 Liz Steward Female 120 S Ohio Ave SE Washington
DC 20022
11868 Austin Martin female 11 W New Mexico Ave NW APT 21B Washington
DC 20030
11980 LOPEZ PALISBO Male 85 S A ST SW Washington
DC 20059
(6 row(s) affected)
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER)
OUTPUT INSERTED.*
values ('MILTON', 'ROLAND', '35 W Union Drive NE', 'Washington', 'DC',20051,'Male'),
('FREDDIE', 'WADE', '2020 Rosevelt BLVD SW', 'Washington', 'DC',20049, 'Male'),
('ZADRA', 'WALCUTT', '25 E Balitmore Pk', 'Silver Springs', 'MD', 20901 , 'Female'),
('TERRENCE', 'KENT', '101 W Georgia Ave Apt 18B', 'Silver Springs', 'MD',20901, 'Male'),
('PHYLLIS', 'SERGIO', '45 Steveson Drv Apt 5G','Silver Springs', 'MD',20901, 'Female'),
('WALCH', 'GENE', '80 Baker BLVD', 'Silver Springs', 'DC',20049, 'Male'),
('BRETT', 'WALCUTT', '25 E Balitmore Pk', 'Silver Springs', 'MD', 20901 , 'Female'),
('LABEAU', 'KENT', '50 W Ocean Drive Ave Apt 18B', 'Silver Springs', 'MD',20901, 'Male'),
('SARA', 'LABBADIA', '45 Steveson Drv Apt 5G','Silver Springs', 'MD',20901, 'Female');
CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY
CUST_STATE ZIP_CODE
----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- -----------------------------
----------- ------------------------- -----------
12092 MILTON ROLAND Male 35 W Union Drive NE Washington
DC 20051
12204 FREDDIE WADE Male 2020 Rosevelt BLVD SW Washington
DC 20049
12316 ZADRA WALCUTT Female 25 E Balitmore Pk Silver Springs
MD 20901
12428 TERRENCE KENT Male 101 W Georgia Ave Apt 18B Silver Springs
MD 20901
12540 PHYLLIS SERGIO Female 45 Steveson Drv Apt 5G Silver Springs
MD 20901
12652 WALCH GENE Male 80 Baker BLVD Silver Springs
DC 20049
12764 BRETT WALCUTT Female 25 E Balitmore Pk Silver Springs
MD 20901
12876 LABEAU KENT Male 50 W Ocean Drive Ave Apt 18B Silver Springs
MD 20901
12988 SARA LABBADIA Female 45 Steveson Drv Apt 5G Silver Springs
MD 20901
ALTER TRIGGER dbo.CUSTOMERS
ON
dbo.CUSTOMER
AFTER UPDATE
AS
SELECT last_name +' ' + 'record has been updated '
from inserted;
GO
UPDATE DBO.CUSTOMER
SET LAST_NAME = 'Richardson'
WHERE cust_no = 9852
Richardson record has been updated
(1 row(s) affected)
insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER)
values ('Derick', 'Rose', '12 S Racine Ave Apt 29 H', 'Chicago', 'IL', 606429 , 'Male'),
('Ralph', 'Nadim', '204 Kimball Rd Apt 20G', 'Chicago', 'IL', 60624, 'Male'),
('Latoya', 'Kadeem', '11 Addison Apt 20c ', 'Chicago', 'IL', 60624, 'Female'),
('lisa', 'Brad', '80 West 83rd Apt 2 ', 'Chicago', 'IL', 60654, 'Female'),
('Kadyn', 'Michaels', '200 East 73rd Apt 2 ', 'Chicago', 'IL', 60624, 'Female'),
('Latrice', 'Abby', '40 Glenwood Aot 23', 'Chicago', 'IL', 60632, 'Female'),
('Thomas', 'Martin', '12 N Javis Apt 9 H3', 'Evaston', 'IL', 606721 , 'Male'),
('Bernice', 'Authur', '19 S Highway 6 Apt 3', 'Evaston', 'IL', 60704, 'Female'),
('Betsy', 'Chris', '20 N Loyola Street','Evaston', 'IL', 60639, 'Female'),
('Akon', 'Cider', '200 W Brodway Ave Apt 40 ', 'Evaston', 'IL', 60704, 'Male'),
('Richard', 'King', '40 S Theather Street Apt 1', 'Evaston', 'IL', 60704, 'Female'),
('Derick', 'Stone', '12 S Race Ave Apt 29 H', 'Evaston', 'IL', 60704 , 'Male'),
('Mark', 'Harison', '1010 S Centinela Ave Apt 2B', 'Los Angles ', 'CA', 90034 , 'Male'),
('TINA', 'Clark', '20 N SunSet Blvd 2C','Los Angeles', 'CA', 90034, 'Female'),
('MARILYN', 'Wash', '12 King Drv', 'Los Angeles', 'CA', 90034, 'Female'),
('MARILYN', 'Wash', '12 King Drv', 'Los Angeles', 'CA', 90034, 'Female'),
('Hamilton', 'Anderson', '050 N Ocean Drv', 'Los Angeles','CA', 90034, 'Female'),
('CHAD', 'ALFRED', '090 S liberity PK', 'Los Angeles','CA', 90034, 'Male'),
('Jones', 'Don', '4040 S Central ','Los Angeles','CA', 90034, 'Male'),
('Britney', 'Hancock', '90 S Hollywood', 'Los Angeles','CA', 90034, 'Female'),
('Geroge', 'Jefferson', '40 S Empire Drv ','Los Angeles','CA', 90034, 'Male'),
('Madilyn', 'Jaken', '10 Beach Drive', 'Los Angeles','CA', 90035, 'Female'),
('Chuck', 'Chi', '30 Mall Drive ', 'Los Angeles','CA', 90035, 'Male'),
('Cesar', 'Carlos', '40 S Central ','Los Angeles','CA', 90034, 'Male'),
('Nadine', 'Corby', '19 Pine Lane ', 'Los Angeles','CA', 90033, 'Female'),
('Abraham', 'Abraham', '40 S Airforce Rd ','Los Angeles ','CA', 90034, 'Male'),
('udo', 'udo', '21 E Disney Rd ','Los Angeles','CA', 90034, 'Male'),
('Octavia', 'Lee', '10 Santa Monica Drive', 'Los Angeles','CA', 90035, 'Female'),
('Abel', 'Adon', '30 santa jose drv ', 'Los Angeles','CA', 90035, 'Male'),
('Nancy', 'William', '40 S lake Rd ','Los Angeles','CA', 90034, 'Male'),
('Monica', 'Corby', '19 Cider Lane ', 'Los Angeles','CA', 90033, 'Female'),
('Chris', 'Abraham', '40 S Airforce Rd ','Los Angeles','CA', 90034, 'Male'),
('Diane', 'Austine', '90 Sony Drive ', 'Los Angeles','CA', 90035, 'Female'),
('Darlene', 'Dion', '92 Church Blvd', 'Los Angeles','CA', 90035, 'Female'),
('Linda', 'Creed', '12 Airport Highway', 'Los Angeles','CA', 90035, 'Female' ),
('Carson', 'Creed', '12 Airport Highway', 'Los Angeles','CA', 90035, 'Male'),
('Perry', 'Tyson', '1150 S King Ave Apt 12B', 'Atlanta' , 'GA', 30301 , 'Male'),
('Aaliyah', 'Clark', '20 N Flowery Branch Road','Los Angeles', 'CA', 30301 , 'Female'),
('Abbigail', 'Udeh', ' 980 Best Friend Road APT 7H', 'Atlanta' , 'GA', 30301, 'Female'),
('Uehudah', 'Urban', '040 Sugar Grov', 'Atlanta' , 'GA', 30303, 'Male'),
('Hamilton', 'Hakeem', '50 Tower Rd', 'Atlanta' , 'GA', 30303, 'Male'),
('Adrianna', 'Gary', '66 Settingdown Road Apt 11Y ','Atlanta' , 'GA', 30304, 'Female'),
('Macie', 'Gabriel', '190 ClockTower Drv', 'Atlanta' , 'GA', 90034, 'Female'),
('Jaiden', 'Jacquez', '40 Knights St ','Atlanta' , 'GA', 30303, 'Male'),
('Felipe', 'Elton', '50 Music Rd', 'Atlanta' , 'GA', 30304, 'Male');
Select * from dbo.customer
CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY CUST_STATE ZIP_CODE
9628 washington Wells Male 20 Lakeshore Driv ApT 34C Chicago IL 60660
9740 TED SERGIO Male 1818 N Paulina Chicago IL 60632
9852 JULIA Richardson Female 8O Chicago RD Apt 227 Chicago IL 60633
9964 EMILY KELLY Female 12 S Kedize Apt 33GH Chicago IL 606421
10076 CLAYTON Cliford Male 20 Lasalle Street Apt 40b Chicago IL 60602
10188 RUBY JESSIE Female 2020 S State Street Chicago IL 60639
10300 CLAUDE JAMIE Male 12 S Dearbon Apt 29 H Chicago IL 606421
10412 MARILYN FERNANDO Female 12 Jane Adams Blvd Chicago IL 60604
10524 NEIL PAVLIKOWSKI Female 20 N State Street Chicago IL 60639
10636 PAVLICK JAVIER Male 200 W Howard Ave Apt 40b Chicago IL 606003
10748 LOUISE JESSIE Female 40 S Abbott Street Apt 18H Chicago IL 60629
10860 Sandy Jack Male 4040 N Washington BLVD SW Washington DC 20032
10972 Christopher Peterson Male 24 N.Illinios Ave NE Washington DC 20011
11084 RoseMary BlueGrass Female 20 S Capitol RD SE Washington DC 20018
11196 Cassandra Morgan Female 1010 W New York Ave NW Washington DC 20030
11308 Diana Mark Female 85 S A ST SW Washington DC 20059
11420 Jayson Alex Male 1830 S Cider BLVD NW Washington DC 20032
11532 JAEGERS SHU Female 40 S Washington BLVD SW Washington DC 20011
11644 Nicholas Nicholas Male 24 N California Ave NE Apt
4D
Washington DC 20018
11756 Liz Steward Female 120 S Ohio Ave SE Washington DC 20022
11868 Austin Martin Female 11 W New Mexico Ave NW
APT 21B
Washington DC 20030
11980 LOPEZ PALISBO Male 85 S A ST SW Washington DC 20059
15900 Derick Rose Male 12 S Racine Ave Apt 29 H Chicago IL 606429
16012 Ralph Nadim Male 204 Kimball Rd Apt 20G Chicago IL 60624
16124 Latoya Kadeem Female 11 Addison Apt 20c Chicago IL 60624
16236 lisa Brad Female 80 West 83rd Apt 2 Chicago IL 60654
16348 Kadyn Michaels Female 200 East 73rd Apt 2 Chicago IL 60624
16460 Latrice Abby Female 40 Glenwood Aot 23 Chicago IL 60632
16572 Thomas Martin Male 12 N Javis Apt 9 H3 Evaston IL 606721
16684 Bernice Authur Female 19 S Highway 6 Apt 3 Evaston IL 60704
16796 Betsy Chris Female 20 N Loyola Street Evaston IL 60639
16908 Akon Cider Male 200 W Brodway Ave Apt 40 Evaston IL 60704
17020 Richard King Female 40 S Theather Street Apt 1 Evaston IL 60704
17132 Derick Stone Male 12 S Race Ave Apt 29 H Evaston IL 60704
17244 Mark Harison Male 1010 S Centinela Ave Apt 2B Los Angles CA 90034
17356 TINA Clark Female 20 N SunSet Blvd 2C Los Angeles CA 90034
17468 MARILYN Wash Female 12 King Drv Los Angeles CA 90034
17580 MARILYN Wash Female 12 King Drv Los Angeles CA 90034
17692 Hamilton Anderson Female 050 N Ocean Drv Los Angeles CA 90034
17804 CHAD ALFRED Male 090 S liberity PK Los Angeles CA 90034
17916 Jones Don Male 4040 S Central Los Angeles CA 90034
18028 Britney Hancock Female 90 S Hollywood Los Angeles CA 90034
18140 Geroge Jefferson Male 40 S Empire Drv Los Angeles CA 90034
18252 Madilyn Jaken Female 10 Beach Drive Los Angeles CA 90035
18364 Chuck Chi Male 30 Mall Drive Los Angeles CA 90035
18476 Cesar Carlos Male 40 S Central Los Angeles CA 90034
18588 Nadine Corby Female 19 Pine Lane Los Angeles CA 90033
18700 Abraham Abraham Male 40 S Airforce Rd Los Angeles CA 90034
18812 udo udo Male 21 E Disney Rd Los Angeles CA 90034
18924 Octavia Lee Female 10 Santa Monica Drive Los Angeles CA 90035
19036 Abel Adon Male 30 santa jose drv Los Angeles CA 90035
19148 Nancy William Male 40 S lake Rd Los Angeles CA 90034
19260 Monica Corby Female 19 Cider Lane Los Angeles CA 90033
19372 Chris Abraham Male 40 S Airforce Rd Los Angeles CA 90034
19484 Diane Austine Female 90 Sony Drive Los Angeles CA 90035
19596 Darlene Dion Female 92 Church Blvd Los Angeles CA 90035
19708 Linda Creed Female 12 Airport Highway Los Angeles CA 90035
19820 Carson Creed Male 12 Airport Highway Los Angeles CA 90035
19932 Perry Tyson Male 1150 S King Ave Apt 12B Atlanta GA 30301
20044 Aaliyah Clark Female 20 N Flowery Branch Road Los Angeles CA 30301
20156 Abbigail Udeh Female 980 Best Friend Road APT 7H Atlanta GA 30301
20268 Uehudah Urban Male 040 Sugar Grov Atlanta GA 30303
20380 Hamilton Hakeem Male 50 Tower Rd Atlanta GA 30303
20492 Adrianna Gary Female 66 Settingdown Road Apt 11Y Atlanta GA 30304
20604 Macie Gabriel Female 190 ClockTower Drv Atlanta GA 90034
20716 Jaiden Jacquez Male 40 Knights St Atlanta GA 30303
20828 Felipe Elton Male 50 Music Rd Atlanta GA 30304
ALTER dbo.customer
Disable trigger customers
delete dbo.customer
output deleted.cust_no, deleted.first_name, deleted.last_name, deleted.gender, deleted.cust_address,
deleted.city, deleted.cust_state, deleted.zip_code
where cust_no = 15900
or cust_no = 10412;
cust_no first_name last_name gender cust_address city cust_state zip_code
----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- ---------------------------------------- ------------------------- -----------
10412 MARILYN FERNANDO Female 12 Jane Adams Blvd Chicago IL 60604
15900 Derick Rose Male 12 S Racine Ave Apt 29 H Chicago IL 606429
(2 row(s) affected)
use AdventureWorks
GO
select C.ContactID, C.FirstName +' . ' + C.MiddleName + '.' + C.LastName AS EMPLOYEE_NAME, E.Title AS JOB_TITLE,
CONVERT (DATE,E.HireDate) AS HIRE_DATE,
ROUND(( P.RATE),2)
AS PAY_RATE, ROUND((P.RATE * 40),2)
AS WEEK_PAY1, ROUND((P.RATE * 40),2)
AS WEEK_PAY2, ROUND((P.RATE * 40),2)
AS WEEK_PAY3,
ROUND((P.RATE * 40),2)
AS WEEK_PAY4,
E.VacationHours, E.SickLeaveHours,
ROUND((P.Rate * 160),2) AS MONTH_PAY_TOTAL, D.DepartmentID AS DEPT_ID, HD.Name AS DEPT_NAME
INTO SALARY_DEC1
from HumanResources.EmployeePayHistory P
INNER JOIN
HumanResources.Employee E
ON P.EmployeeID = E.EmployeeID
INNER JOIN
Person.Contact C
ON E.ContactID = E.ContactID
INNER JOIN HumanResources.EmployeeDepartmentHistory D
ON E.EmployeeID = D.DepartmentID
INNER JOIN HumanResources.Department HD
ON D.DepartmentID = HD.DepartmentID
WHERE C.FirstName + '.'+ C.MiddleName +'.' +C.LastName IS NOT NULL
(3717252 row(s) affected)
USE AdventureWorks
GO
CREATE PROCEDURE DBO.SALARYDEC
AS
SELECT top(50)CONTACTID, EMPLOYEE_NAME, JOB_TITLE, HIRE_DATE, WEEK_PAY1, WEEK_PAY2, WEEK_PAY3, WEEK_PAY4, VacationHours, SickLeaveHours,
MONTH_PAY_TOTAL,DEPT_NAME
FROM dbo.SALARY_DEC1
go
EXEC DBO.SALARYDEC
CONTACTID EMPLOYEE_NAME JOB_TITLE HIRE_DATE WEEK_PAY1 WEEK_PAY2 WEEK_PAY3 WEEK_PAY4 VacationHours SickLeaveHours MONTH_PAY_TOTAL DEPT_NAME
6714 Isabelle . W.Long Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6716 Isabelle .
C.Patterson
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6719 Carla . C.Chapman Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6720 Isabelle .
A.Flores
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6721 Isabelle .
C.Winston
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6726 Carla . C.Van Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6728 Carla .
W.Malhotra
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6729 Isabelle .
L.Alexander
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6730 Isabelle .
S.Russell
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6733 Kelly . W.Price Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6735 Damien . M.Ye Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6736 Franklin .
L.Zhang
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6738 Kelly . G.Wood Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6739 Carla . D.Madan Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6743 Kelly .
L.Henderson
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6747 Kelly . E.Perry Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6748 Carla . K.Rana Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6749 Kelly . L.Powell Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6750 Kelly . G.Long Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6751 Carla . L.Raman Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6754 Carla .
A.Sullivan
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6755 Kelly . R.Flores Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6756 Kelly .
M.Washington
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6757 Carla . L.Mehta Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6759 Kelly . S.Simmons Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6761 Franklin . S.Wang Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6763 Carla . G.Lopez Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6766 Carla .
J.Gonzalez
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6769 Carla .
V.Rodriguez
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6770 Kelly . E.Russell Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6772 Kelly . F.Griffin Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6774 Virginia . J.Suri Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6776 Virginia .
S.Kapoor
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6777 Kelly . M.Hayes Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6779 Virginia .
M.Chandra
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6780 Marissa .
J.Bennett
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6782 Franklin . A.Chen Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6783 Virginia .
R.Patel
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6784 Melanie .
P.Butler
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6785 Melanie .
T.Simmons
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6786 Virginia .
E.Vance
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6789 Melanie .
C.Gonzales
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6790 Melanie .
L.Bryant
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6792 Melanie .
N.Alexander
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6793 Melanie .
B.Russell
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6794 Melanie .
A.Griffin
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6797 Melanie . G.Hayes Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6802 Alexandria .
M.Wood
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6806 Alexandria .
R.Henderson
Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
6807 Virginia . C.Sara Production
Technician -
WC60
7/31/1996 498 498 498 498 21 30 1992 Engineering
EXEC sp_helptext 'dbo.SALARYDEC'
Text
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
CREATE PROCEDURE DBO.SALARYDEC
AS
SELECT top(50)CONTACTID, EMPLOYEE_NAME, JOB_TITLE, HIRE_DATE, WEEK_PAY1, WEEK_PAY2, WEEK_PAY3, WEEK_PAY4, VacationHours, SickLeaveHours,
MONTH_PAY_TOTAL,DEPT_NAME
FROM dbo.SALARY_DEC1
update SALARY_DEC1
set pay_rate = 50
where dept_id in (1,13,10,11)
update SALARY_DEC1
set pay_rate = 40
where dept_id in (7, 6, 5, 4, 8,9, 14, 15)
update SALARY_DEC1
set pay_rate = 60
where dept_id = 16
update SALARY_DEC1
set pay_rate = 30
where dept_id not in (7,6,5,4,8,9,14,15,16,1,13,10,11)
/* salary_dec1 was renamed to employee_salary*/
Alter table employee_salary
add Hours_Worked int;
Update employee_salary
set hours_worked = 40;
use AdventureWorks
go
CREATE TRIGGER salarydbemp
ON
dbo.Employee_Salary
instead of update
as print
'The data has been sucessfully updated to the database.';
use AdventureWorks
go
update dbo.Employee_Salary
set VacationHours = 500
where contactid in(6714, 7095, 711)
The data has been sucessfully updated to the database.
(648 row(s) affected)
/* Only contact 6714 records was copied from excel to make it easier to understand that the update operation did not work */
Select * from dbo.Employee_Salary
ContactID EMPLOYEE_NAME JOB_TITLE HIRE_DATE PAY_RATE WEEK_PAY1 WEEK_PAY2 WEEK_PAY3 WEEK_PAY4 VacationHours SickLeaveHours MONTH_PAY_TOTAL DEPT_ID DEPT_NAME
6714 Isabelle .
W.Long
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
6714 Isabelle .W.Long Production 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
Supervisor
- WC60
6714 Isabelle .
W.Long
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
6714 Isabelle .
W.Long
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
6714 Isabelle .
W.Long
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
6714 Isabelle .
W.Long
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
6714 Isabelle .
W.Long
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
6714 Isabelle .
W.Long
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
USE [AdventureWorks]
GO
/****** Object: Trigger [dbo].[salarydbemp] Script Date: 12/17/2011 07:42:01 ******/
SET ANSI_NULLS on
GO
SET QUOTED_IDENTIFIER on
GO
ALTER TRIGGER [dbo].[salarydbemp]
ON
[dbo].[Employee_Salary]
instead of delete
as print
'The data has been sucessfully deleted from the database.';
GO
Command(s) completed successfully.
update dbo.Employee_Salary
set VacationHours = 500
where contactid in(6714, 7095)
(648 row(s) affected)
delete dbo.Employee_Salary
where contactid = 7095
The data has been sucessfully deleted from the database.
(324 row(s) affected)
Select * from dbo.Employee_Salary
where contactid in(6714, 7095)
ContactID EMPLOYEE_NAME JOB_TITLE HIRE_DATE
PAY_RATE WEEK_PAY1 WEEK_PAY2 WEEK_PAY3 WEEK_PAY4
VacationHours SickLeaveHours
MONTH_PAY_TOTAL
DEPT_ID DEPT_NAME Hours_Worked
6714 Isabelle .
W.Long
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40
7095 Joan .
D.Watson
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40
7095 Joan .
D.Watson
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40
7095 Joan .
D.Watson
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40
7095 Joan .
D.Watson
Production
Supervisor
- WC60
1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40
use AdventureWorks
go
ALTER table dbo.Employee_Salary
Disable trigger salarydbemp;
Command(s) completed successfully.
delete dbo.Employee_Salary
output deleted.ContactID, deleted.EMPLOYEE_NAME, deleted.DEPT_ID, deleted.JOB_TITLE
where contactid = 7095
ContactID EMPLOYEE_NAME DEPT_ID JOB_TITLE
7095 Joan . D.Watson 1 Production Technician - WC60
7095 Joan . D.Watson 1 Production Technician - WC60
7095 Joan . D.Watson 1 Production Technician - WC60
7095 Joan . D.Watson 1 Production Technician - WC60
7095 Joan . D.Watson 1 Production Technician - WC60
7095 Joan . D.Watson 1 Production Technician - WC60
7095 Joan . D.Watson 2 Marketing Assistant
7095 Joan . D.Watson 2 Marketing Assistant
7095 Joan . D.Watson 2 Marketing Assistant
7095 Joan . D.Watson 2 Marketing Assistant
USE [AdventureWorks]
GO
/****** Object: Trigger [dbo].[salarydbemp] Script Date: 12/17/2011 12:17:23 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[salarydbemp]
ON
[dbo].[Employee_Salary]
AFTER UPDATE, INSERT
AS
IF UPDATE(PAY_RATE)
BEGIN;
PRINT 'PAY_RATE HAS BEEN UPDATED'
END;
ELSE
IF UPDATE(JOB_TITLE)
BEGIN ;
PRINT 'JOB TITLE HAS BEEN UPDATED'
END;
ELSE
IF UPDATE(VacationHours)
BEGIN;
PRINT 'VACTION HOURS HAS BEEN UPDATED'
END;
ELSE
IF UPDATE (SickLeaveHours)
BEGIN;
PRINT 'SICK HOURS UPDATED'
end;
else
begin;
print 'The record has been updated'
end;
GO
use AdventureWorks
update dbo.employee_salary
set PAY_RATE = 55
where dept_name = 'Quality Assurance';
go
update dbo.employee_salary
set JOB_TITLE = 'Database Systems'
where dept_id = 7;
go
update dbo.employee_salary
set VacationHours = 340
where contactid between 2 and 2005;
go
update dbo.employee_salary
set SickLeaveHours = 340
where dept_id = 15;
go
PAY_RATE HAS BEEN UPDATED
(80304 row(s) affected)
JOB TITLE HAS BEEN UPDATED
(2064960 row(s) affected)
VACTION HOURS HAS BEEN UPDATED
(353160 row(s) affected)
SICK HOURS UPDATED
(68832 row(s) affected)
/* Results are shortened */
SELECT CONTACTID, PAY_RATE
FROM dbo.employee_salary
WHERE DEPT_NAME = 'Quality Assurance';
CONTACTID PAY_RATE
3602 55
3603 55
3604 55
3605 55
3608 55
3609 55
3616 55
3617 55
3619 55
3620 55
3629 55
SELECT CONTACTID, JOB_TITLE
FROM dbo.employee_salary
WHERE DEPT_ID = 7;
CONTACTID JOB_TITLE
721 Database Systems
718 Database Systems
SELECT CONTACTID, SickLeaveHours
FROM dbo.employee_salary
WHERE DEPT_ID = 15;
CONTACTID SickLeaveHours
18 340
19 340
20 340
21 340
22 340
24 340
25 340
26 340
SELECT CONTACTID, VACATIONHOURS
FROM dbo.employee_salary
WHERE contactid between 2 and 2005;
use AdventureWorks
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEE1
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 1
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
Go
Command(s) completed successfully.
use AdventureWorks
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES2
CONTACTID VACATIONHOURS
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
1836 340
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 2
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
Go
Command(s) completed successfully.
use AdventureWorks
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES3
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 3;
Go
CREATE PROCEDURE DBO.DEPT_EMPOLYEES4
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 4;
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES5
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 5;
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES6
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 6;
Go
CREATE PROCEDURE DBO.DEPT_EMPOLYEES7
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 7
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES8
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 8
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES9
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 9
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES10
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 10;
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES11
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 11
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES12
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 12
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES13
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 13
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES14
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 14
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES15
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 15
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
CREATE PROCEDURE DBO.DEPT_EMPOLYEES16
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 15
AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024);
GO
Command(s) completed successfully.
USE AdventureWorks
GO
EXEC dbo.DEPT_EMPOLYEES10;
GO
CONTACTID EMPLOYEE_NAME JOB_TITLE HIRE_DATE PHONE_NUMBER AREA_CODE EmployeeID SNN Gender
1005 Gail . A.Erickson Production Technician - WC10 2/7/1998 555-0139 849 9 695256908 F
1004 Sharon .
B.Salavaria
Production Technician - WC10 2/7/1998 555-0138 970 270 56920285 F
1005 Gail . A.Erickson Production Technician - WC10 2/7/1998 555-0139 849 9 695256908 F
1004 Sharon .
B.Salavaria
Production Technician - WC10 2/7/1998 555-0138 970 270 56920285 F
1008 Janice . M.Galvin Production Technician - WC10 2/7/1998 555-0117 473 265 486228782 F
1001 Terri . Lee.Duffy Production Technician - WC10 2/7/1998 555-0175 819 12 245797967 F
1005 Gail . A.Erickson Production Technician - WC10 2/7/1998 555-0139 849 9 695256908 F
RESULTS (ABRIDGED)
USE AdventureWorks
GO
EXEC SP_HELPTEXT 'dbo.DEPT_EMPOLYEES10';
GO
Text
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
CREATE PROCEDURE DBO.DEPT_EMPOLYEES10
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 10;
USE [AdventureWorks]
GO
/****** Object: StoredProcedure [dbo].[DEPT_EMPOLYEES10] Script Date: 12/18/2011 21:13:38 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[DEPT_EMPOLYEES10]
WITH ENCRYPTION
AS
SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE
,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender
FROM dbo.Employee_Salary C
INNER JOIN HumanResources.Employee E
ON C.ContactID = E.ContactID
INNER JOIN Person.Contact P
ON E.ContactID =P.ContactID
WHERE DEPT_ID = 10;
GO
The text for object 'dbo.DEPT_EMPOLYEES10' is encrypted.
USE AdventureWorks
GO
USE AdventureWorks
GO
CREATE PROCEDURE EMPOLYEE_GENDERF
@SEARCH nchar(1) = 'F'
as
SELECT E.EmployeeID, E.Gender, P.FirstName +' ' + P.LastName + ' *******'+ E.NationalIDNumber AS EMPLOYEE, CAST(E.HIREDATE AS CHAR(12))AS HIREDATE
FROM HumanResources.Employee E
INNER JOIN
Person.Contact P
ON P.ContactID = E.ContactID
where e.Gender =@SEARCH
GO
EXEC EMPOLYEE_GENDERF
EmployeeID Gender EMPLOYEE HIREDATE
7 F JoLynn Dobney *******309738752 Jan 26 1998
8 F Ruth Ellerbrock *******690627818 Feb 6 1998
9 F Gail Erickson *******695256908 Feb 6 1998
12 F Terri Duffy *******245797967 Mar 3 1998
16 F Jo Brown *******446466105 Mar 30 1998
17 F Doris Hartwig *******565090917 Apr 11 1998
19 F Diane Glimp *******9659517 Apr 29 1998
30 F Paula Barreto de Mattos *******535145551 Jan 7 1999
34 F Susan Eaton *******586486572 Jan 8 1999
36 F Alice Ciccu *******113695504 Jan 8 1999
40 F Yvonne McKay *******713403643 Jan 10 1999
42 F Jean Trenary *******441044382 Jan 12 1999
50 F Susan Metters *******351069889 Jan 15 1999
USE AdventureWorks
GO
CREATE PROCEDURE EMPDEPTRECORDS
(
@DEPTNAME NVARCHAR(50)
)
AS
SELECT E.EmployeeID, D.Name AS DEPT_NAME, E.Gender, P.FirstName +' ' + P.LastName + ' ---'+ SUBSTRING (E.NationalIDNumber,5,3) AS EMPLOYEE, CAST(E.HIREDATE AS CHAR(12))AS
HIREDATE
, E.NationalIDNumber
FROM HumanResources.Employee E
INNER JOIN
Person.Contact P
ON P.ContactID = E.ContactID
INNER JOIN HumanResources.EmployeeDepartmentHistory H
ON E.EmployeeID = H.EmployeeID
INNER JOIN HumanResources.Department D
ON D.DepartmentID = H.DepartmentID
WHERE D.Name =@DEPTNAME;
GO
Command(s) completed successfully.
EmployeeID DEPT_NAME Gender EMPLOYEE HIREDATE NationalIDNumber
268 Sales M Stephen Jiang ---978 Feb 4 2001 502097814
273 Sales M Brian Welcker ---321 Mar 18 2001 112432117
275 Sales M Michael Blythe ---601 Jul 1 2001 841560125
276 Sales F Linda Mitchell ---447 Jul 1 2001 191644724
277 Sales F Jillian Carson ---898 Jul 1 2001 615389812
278 Sales M Garrett Vargas ---742 Jul 1 2001 234474252
279 Sales M Tsvi Reiter ---743 Jul 1 2001 716374314
280 Sales F Pamela Ansman-Wolfe ---166 Jul 1 2001 61161660
281 Sales M Shu Ito ---978 Jul 1 2001 139397894
282 Sales M José Saraiva ---714 Jul 1 2001 399771412
283 Sales M David Campbell ---542 Jul 1 2001 987554265
284 Sales F Amy Alberts ---104 May 18 2002 982310417
285 Sales F Jae Pak ---913 Jul 1 2002 668991357
286 Sales M Ranjit Varkey Chudukatil ---197 Jul 1 2002 134219713
287 Sales M Tete Mensa-Annan ---619 Nov 1 2002 90836195
288 Sales M Syed Abbas ---449 Apr 15 2003 481044938
289 Sales F Rachel Valdez ---762 Jul 1 2003 954276278
290 Sales F Lynn Tsoflias ---967 Jul 1 2003 758596752
EXEC EMPDEPTRECORDS 'PRODUCTION';
EmployeeID DEPT_NAME Gender EMPLOYEE HIREDATE NationalIDNumber
1 Production M Guy Gilbert ---780 Jul 31 1996 14417807
10 Production M Barry Johnson ---658 Feb 7 1998 912265825
13 Production M Sidney Higa ---736 Mar 5 1998 844973625
14 Production M Taylor Maxwell ---693 Mar 11 1998 233069302
15 Production M Jeffrey Ford ---748 Mar 23 1998 132674823
18 Production M John Campbell ---703 Apr 18 1998 494170342
20 Production M Steven Selikoff ---689 Jan 2 1999 443968955
22 Production M Stuart Munson ---601 Jan 3 1999 835460180
23 Production M Greg Alderson ---859 Jan 3 1999 687685941
24 Production M David Johnson ---388 Jan 3 1999 498138869
25 Production M Zheng Mu ---681 Jan 4 1999 360868122
26 Production M Ivo Salmre ---892 Jan 5 1999 964089218
27 Production M Paul Komosinski ---627 Jan 5 1999 384162788
29 Production M Kendall Keil ---587 Jan 6 1999 571658797
31 Production M Alejandro McGuel ---977 Jan 7 1999 761597760
32 Production M Garrett Young ---384 Jan 8 1999 271438431
33 Production M Jian Shuo Wang ---392 Jan 8 1999 160739235
use AdventureWorksDW
CREATE FUNCTION EMPLOYEE_QUOTA()
RETURNS TABLE
AS
RETURN(
SELECT E.EmployeeKey AS EMP_ID, E.FirstName + ','+ E.LastName AS EMP_NAME, F.CalendarYear, F.CalendarQuarter, F.SalesAmountQuota,
CAST(T.FullDateAlternateKey AS NVARCHAR(12) ) AS DATE_RELASED,
T.FiscalQuarter, T.FiscalYear,
SUM(F.SalesAmountQuota) OVER(PARTITION BY E.EmployeeKey) AS TOTAL_SALES_EMPLOYEE
FROM dbo.FactSalesQuota F
INNER JOIN
dbo.DimTime T
ON
F.TimeKey = T.TimeKey
INNER JOIN dbo.DimEmployee E
ON
E.EmployeeKey = F.EmployeeKey
);
Select * from EMPLOYEE_QUOTA()
Order by CalendarYear
EMP_ID EMP_NAME CalendarYear CalendarQuarter SalesAmountQuota DATE_RELASED FiscalQuarter FiscalYear TOTAL_SALES_EMPLOYEE
272 Stephen,Jiang 2001 3 $ 28,000.00 Jul 1 2001 1 2002 $ 1,305,000.00
272 Stephen,Jiang 2001 4 $ 7,000.00 Oct 1 2001 2 2002 $ 1,305,000.00
281 Michael,Blythe 2001 3 $ 367,000.00 Jul 1 2001 1 2002 $11,162,000.00
281 Michael,Blythe 2001 4 $ 556,000.00 Oct 1 2001 2 2002 $11,162,000.00
282 Linda,Mitchell 2001 3 $ 637,000.00 Jul 1 2001 1 2002 $11,786,000.00
282 Linda,Mitchell 2001 4 $ 781,000.00 Oct 1 2001 2 2002 $11,786,000.00
283 Jillian,Carson 2001 3 $ 565,000.00 Jul 1 2001 1 2002 $12,198,000.00
283 Jillian,Carson 2001 4 $ 872,000.00 Oct 1 2001 2 2002 $12,198,000.00
284 Garrett,Vargas 2001 3 $ 244,000.00 Jul 1 2001 1 2002 $ 4,365,000.00
284 Garrett,Vargas 2001 4 $ 356,000.00 Oct 1 2001 2 2002 $ 4,365,000.00
285 Tsvi,Reiter 2001 3 $ 669,000.00 Jul 1 2001 1 2002 $ 8,541,000.00
285 Tsvi,Reiter 2001 4 $ 917,000.00 Oct 1 2001 2 2002 $ 8,541,000.00
286 Pamela,Ansman-Wolfe 2001 3 $ 165,000.00 Jul 1 2001 1 2002 $ 3,551,000.00
286 Pamela,Ansman-Wolfe 2001 4 $ 469,000.00 Oct 1 2001 2 2002 $ 3,551,000.00
287 Shu,Ito 2001 3 $ 460,000.00 Jul 1 2001 1 2002 $ 7,804,000.00
287 Shu,Ito 2001 4 $ 549,000.00 Oct 1 2001 2 2002 $ 7,804,000.00
289 David,Campbell 2001 3 $ 226,000.00 Jul 1 2001 1 2002 $ 4,025,000.00
289 David,Campbell 2001 4 $ 353,000.00 Oct 1 2001 2 2002 $ 4,025,000.00
288 José,Saraiva 2001 3 $ 525,000.00 Jul 1 2001 1 2002 $ 7,098,000.00
288 José,Saraiva 2001 4 $ 767,000.00 Oct 1 2001 2 2002 $ 7,098,000.00
288 José,Saraiva 2004 1 $ 569,000.00 Jan 1 2004 3 2004 $ 7,098,000.00
288 José,Saraiva 2004 2 $ 830,000.00 Apr 1 2004 4 2004 $ 7,098,000.00
289 David,Campbell 2004 1 $ 234,000.00 Jan 1 2004 3 2004 $ 4,025,000.00
289 David,Campbell 2004 2 $ 403,000.00 Apr 1 2004 4 2004 $ 4,025,000.00
290 Amy,Alberts 2004 1 $ 116,000.00 Jan 1 2004 3 2004 $ 876,000.00
290 Amy,Alberts 2004 2 $ 1,000.00 Apr 1 2004 4 2004 $ 876,000.00
291 Jae,Pak 2004 1 $ 883,000.00 Jan 1 2004 3 2004 $10,514,000.00
291 Jae,Pak 2004 2 $ 1,329,000.00 Apr 1 2004 4 2004 $10,514,000.00
292 Ranjit,Varkey
Chudukatil
2004 1 $ 707,000.00 Jan 1 2004 3 2004 $ 5,557,000.00
292 Ranjit,Varkey
Chudukatil
2004 2 $ 908,000.00 Apr 1 2004 4 2004 $ 5,557,000.00
293 Tete,Mensa-Annan 2004 1 $ 454,000.00 Jan 1 2004 3 2004 $ 2,753,000.00
293 Tete,Mensa-Annan 2004 2 $ 497,000.00 Apr 1 2004 4 2004 $ 2,753,000.00
RESULTS (ABRIDGED)
SELECT CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) AS AGE, GENDER,
F_NAME + ','+L_NAME AS CUSTOMER_NAME
INTO
CUSTOMER_5
FROM dbo.CUSTOMER_DIM009
(18484 row(s) affected)
use MSSQL
GO
create function customerAge8l(
@CUST_NO INT
)
returns integer
as
begin
declare @custAGE INT
declare @custno int
SELECT @custAGE= AGE FROM
DB665. dbo.CUSTOMER_5
WHERE CUST_NO= @CUST_NO
RETURN(@custAGE)
END
Command(s) completed successfully.
select dbo.customerAge8l(29483)
52
(1 row(s) affected)
use MSSQL
GO
create function customerAges(
@CUST_NO INT
)
returns integer
as
begin
declare @custAGE INT
SELECT @custAGE= DATEDIFF(YY, DOB, CURRENT_TIMESTAMP)
FROM DB665.dbo.CUSTOMER_DIM009
WHERE CUST_NO= @CUST_NO
RETURN(@custAGE)
END
Command(s) completed successfully.
select dbo.customerAge8l(29483)
-----------
52
(1 row(s) affected)
USE MSSQL
GO
SELECT E.EmployeeID, E.Gender, E.Title, P.FirstName, P.LastName, E.BirthDate,
D.DepartmentID, D.Name, DATEDIFF(YY, E.BirthDate, CURRENT_TIMESTAMP) AS AGE,
CONVERT(DATE, E.HireDate) AS HIRE_DATE , DATEDIFF(YY, E.HireDate, CURRENT_TIMESTAMP) AS NUM_YRS_EMPLOY
INTO
EMP_RECORDS
FROM AdventureWorks.HumanResources.Employee E INNER
JOIN AdventureWorks.Person.Contact P
ON E.ContactID = P.ContactID
INNER JOIN AdventureWorks.HumanResources.EmployeeDepartmentHistory H
ON
H.EmployeeID = E.EmployeeID
INNER JOIN AdventureWorks.HumanResources.Department D
ON
D.DepartmentID = H.DepartmentID
(296 row(s) affected)
USE MSSQL
GO
create function AVG_AGE_DEPT(
@DepartmentID SMALLINT
)
returns integer
as
begin
declare @AVGAGE INT
SELECT @AVGAGE= AVG(AGE)
FROM EMP_RECORDS
RETURN(@AVGAGE)
END
SELECT dbo.AVG_AGE_DEPT(7)
-----------
42
(1 row(s) affected)
SELECT dbo.AVG_AGE_DEPT(6)
-----------
42
(1 row(s) affected)
/* SOMETHING WAS WRONG WITH THE FUNCTION SO I DECIEDED TO FIX IT */
ALTER function [dbo].[AVG_AGE_DEPT](
@DepartmentID SMALLINT
)
returns integer
as
begin
declare @AVGAGE INT
SELECT @AVGAGE= AVG(AGE)
FROM EMP_RECORDS
WHERE DepartmentID =@DepartmentID
RETURN(@AVGAGE)
END
USE MSSQL
SELECT dbo.AVG_AGE_DEPT(7)
-----------
41
(1 row(s) affected)
SELECT dbo.AVG_AGE_DEPT(6)
-----------
36
(1 row(s) affected)
USE MSSQL
GO
create function student_grad(
@STUDENT_ID decimal,
@SECTION_ID decimal
)
returns integer
as
begin
declare @Final_grade INT
SELECT @Final_grade= ROUND(sum(numeric_grade)/1000,2)* 100 from dbo.grade
where student_id = @STUDENT_ID
AND SECTION_ID = @SECTION_ID
RETURN(@Final_grade)
END
Command(s) completed successfully.
SELECT dbo.student_grad(202,105)
81
(1 row(s) affected)
SELECT dbo.student_grad(200,106)
-----------
93
(1 row(s) affected)
USE MSSQL
GO
CREATE FUNCTION [dbo].[PROFRECORD](@INSTRUCTOR_ID DECIMAL)
RETURNS TABLE
AS
RETURN(
SELECT I.SALUTATION, I.FIRST_NAME +','+ I.LAST_NAME AS PROFESSOR_NAME,
S.SECTION_NO, S.COURSE_NO, S.LOCATION, S.CAPACITY, C.DESCRIPTION, S.SECTION_ID
FROM DBO.INSTRUCTOR I INNER JOIN dbo.section S
ON I.INSTRUCTOR_ID = S.INSTRUCTOR_ID
INNER JOIN dbo.course C
ON S.COURSE_NO = C. COURSE_NO
INNER JOIN dbo.enrollment E
ON
S.SECTION_ID = E.SECTION_ID
WHERE I.INSTRUCTOR_ID = @INSTRUCTOR_ID
)
GO
SELECT I.SALUTATION, I.FIRST_NAME +','+ I.LAST_NAME AS PROFESSOR_NAME,
S.SECTION_NO, S.COURSE_NO, S.LOCATION, S.CAPACITY, C.DESCRIPTION, S.SECTION_ID
FROM DBO.INSTRUCTOR I INNER JOIN dbo.section S
ON I.INSTRUCTOR_ID = S.INSTRUCTOR_ID
INNER JOIN dbo.course C
ON S.COURSE_NO = C. COURSE_NO
INNER JOIN dbo.enrollment E
ON
S.SECTION_ID = E.SECTION_ID
CROSS APPLY dbo.PROFRECORD(I.INSTRUCTOR_ID)
ORDER BY C.DESCRIPTION
SALUTATION PROFESSOR_NAME SECTION_NO COURSE_NO LOCATION CAPACITY DESCRIPTION SECTION_ID
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC
Language
101
Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC 101
Language
RESULTS (ABRIDGED)
CREATE VIEW DEPTSUMMARY
AS
SELECT DISTINCT(DepartmentID),NAME,
AVG(AGE) OVER(PARTITION BY DepartmentID) AS Avg_Age,
MIN(AGE) OVER(PARTITION BY DepartmentID) AS Smallest_Age,
MAX(AGE)OVER(PARTITION BY DepartmentID) AS Oldest_Age
FROM
EMP_RECORDS
SELECT * FROM dbo.DEPTSUMMARY;
DepartmentID NAME Avg_Age Smallest_Age Oldest_Age
1 Engineering 53 42 69
2 Tool Design 45 32 62
3 Sales 50 41 70
4 Marketing 42 34 59
5 Purchasing 48 37 69
6 Research and Development 36 34 42
7 Production 41 30 69
8 Production Control 39 33 53
9 Human Resources 41 37 45
10 Finance 43 37 57
11 Information Services 41 33 46
12 Document Control 37 31 45
13 Quality Assurance 42 32 54
14 Facilities and Maintenance 51 45 67
15 Shipping and Receiving 42 36 49
16 Executive 48 45 52
CREATE FUNCTION DEPT_SUMMARRY()
RETURNS @SUMMARY TABLE
(DEPT_ID INTEGER,
DEPT_NAME NVARCHAR(50),
AVG_AGE INT,
SMALLEST_AGE INT,
OLDEST_AGE INT
)
AS
BEGIN
INSERT @SUMMARY(DEPT_ID, Avg_Age, Smallest_Age, Oldest_Age, DEPT_NAME)
SELECT DepartmentID, Avg_Age, Smallest_Age, Oldest_Age, NAME
FROM
dbo.DEPTSUMMARY
ORDER BY NAME
RETURN;
END;
SELECT * FROM DEPT_SUMMARRY()
DEPT_ID DEPT_NAME AVG_AGE SMALLEST_AGE OLDEST_AGE
12 Document Control 37 31 45
1 Engineering 53 42 69
16 Executive 48 45 52
14 Facilities and Maintenance 51 45 67
10 Finance 43 37 57
9 Human Resources 41 37 45
11 Information Services 41 33 46
4 Marketing 42 34 59
7 Production 41 30 69
8 Production Control 39 33 53
5 Purchasing 48 37 69
13 Quality Assurance 42 32 54
6 Research and Development 36 34 42
3 Sales 50 41 70
15 Shipping and Receiving 42 36 49
2 Tool Design 45 32 62
USE MSSQL
GO
CREATE FUNCTION productDetails()
RETURNS @Details TABLE
(ProductID int,
Name nvarchar(50),
color nvarchar(15),
StandardCost money,
ListPrice money,
Size nvarchar(5),
weight decimal,
WeightUnitMeasureCode nchar(3),
SizeUnitMeasureCode nchar(3),
PROD_SUB_CATEGORY_NAME nvarchar(50),
PROD_CATEGORY_NAME nvarchar(50),
MODEL_NAME NVARCHAR(50)
)
AS
BEGIN
INSERT @Details(ProductID,Name,StandardCost,ListPrice,Size,Weight, WeightUnitMeasureCode, SizeUnitMeasureCode,
PROD_SUB_CATEGORY_NAME,PROD_CATEGORY_NAME,MODEL_NAME)
SELECT p.ProductID, P.name,ROUND( p.StandardCost,2)StandardCost,
p.ListPrice,p.Size,p.Weight, p.WeightUnitMeasureCode,p.SizeUnitMeasureCode
,C.Name AS PROD_SUB_CATEGORY_NAME
, G.NAME AS PROD_CATEGORY_NAME,
M.Name AS MODEL_NAME
from
AdventureWorks.Production.Product p
inner
join
AdventureWorks.Production.ProductSubcategory C
ON
p.ProductSubcategoryID = C.ProductSubcategoryID
INNER JOIN
AdventureWorks.Production.ProductCategory G
ON C.ProductCategoryID = G.ProductCategoryID
INNER JOIN
AdventureWorks.Production.ProductModel M
ON P.ProductModelID = M.ProductModelID
ORDER BY P.NAME
RETURN;
END;
SELECT * FROM dbo.productDetails()
ProductID Name color Standard
Cost
ListPrice Size weight WeightUnit
MeasureCode
SizeUnit
MeasureCode
PROD_SUB_CATEGORY_NAME PROD_CATEGORY_NAME MODEL_NAME
879 All-Purpose Bike
Stand
59.47 159 Bike Stands Accessories All-Purpose Bike Stand
712 AWC Logo Cap 6.92 8.99 Caps Clothing Cycling Cap
877 Bike Wash -
Dissolver
2.97 7.95 Cleaners Accessories Bike Wash
843 Cable Lock 10.31 25 Locks Accessories Cable Lock
952 Chain 8.99 20.24 Chains Components Chain
866 Classic Vest, L 23.75 63.5 L Vests Clothing Classic Vest
865 Classic Vest, M 23.75 63.5 M Vests Clothing Classic Vest
864 Classic Vest, S 23.75 63.5 S Vests Clothing Classic Vest
878 Fender Set -
Mountain
8.22 21.98 Fenders Accessories Fender Set - Mountain
863 Full-Finger Gloves,
L
15.67 37.99 L Gloves Clothing Full-Finger Gloves
862 Full-Finger Gloves,
M
15.67 37.99 M Gloves Clothing Full-Finger Gloves
RESULTS (ABRIDGED)
/* DEFAULT DATABASE MASTER. ADVENTUREWORKS DATABASE WAS EXPORTED FROM MICROSOFT SQL SERVER 2008 INTO MICROSOFT SQL SERVER 2008R2 */
select E.EmployeeID, P.FirstName + ',' + P.LastName AS Employee_Name,
E.BirthDate, CONVERT(nvarchar(12), E.BirthDate, 101) as Birthdate_American,
CONVERT(nvarchar(12), E.BirthDate, 103) as Birthdate_European,
CONVERT(nvarchar(12), E.BirthDate, 100) as Birthdate_default
from HumanResources.Employee E
INNER JOIN
Person.Contact P
ON E.ContactID = P.ContactID
order by e.EmployeeI
RESULTS (ABRIDGED)
select E.EmployeeID, P.FirstName + ',' + P.LastName AS Employee_Name,
E.BirthDate, DATENAME(MONTH,E.BIRTHDATE)+ '-'+ DATENAME(DAY,E.BIRTHDATE)
+ '-' + DATENAME(YEAR,E.BIRTHDATE) AS BIRTH_DATE
from HumanResources.Employee E
INNER JOIN
Person.Contact P
ON E.ContactID = P.ContactID
order by e.EmployeeID
EmployeeID Employee_Name BirthDate BIRTH_DATE
1 Guy,Gilbert 1972-05-15 00:00:00.000 May-15-1972
EmployeeID Employee_Name BirthDate Birthdate_American Birthdate_European Birthdate_default
1 Guy,Gilbert 5/15/1972 5/15/1972 15/05/1972 May 15 1972
2 Kevin,Brown 6/3/1977 6/3/1977 3/6/1977 Jun 3 1977
3 Roberto,Tamburello 12/13/1964 12/13/1964 13/12/1964 Dec 13 1964
4 Rob,Walters 1/23/1965 1/23/1965 23/01/1965 Jan 23 1965
5 Thierry,D'Hers 8/29/1949 8/29/1949 29/08/1949 Aug 29 1949
6 David,Bradley 4/19/1965 4/19/1965 19/04/1965 Apr 19 1965
7 JoLynn,Dobney 2/16/1946 2/16/1946 16/02/1946 Feb 16 1946
8 Ruth,Ellerbrock 7/6/1946 7/6/1946 6/7/1946 Jul 6 1946
9 Gail,Erickson 10/29/1942 10/29/1942 29/10/1942 Oct 29 1942
10 Barry,Johnson 4/27/1946 4/27/1946 27/04/1946 Apr 27 1946
11 Jossef,Goldberg 4/11/1949 4/11/1949 11/4/1949 Apr 11 1949
12 Terri,Duffy 9/1/1961 9/1/1961 1/9/1961 Sep 1 1961
13 Sidney,Higa 10/1/1946 10/1/1946 1/10/1946 Oct 1 1946
14 Taylor,Maxwell 5/3/1946 5/3/1946 3/5/1946 May 3 1946
15 Jeffrey,Ford 8/12/1946 8/12/1946 12/8/1946 Aug 12 1946
16 Jo,Brown 11/9/1946 11/9/1946 9/11/1946 Nov 9 1946
17 Doris,Hartwig 5/6/1946 5/6/1946 6/5/1946 May 6 1946
18 John,Campbell 9/8/1946 9/8/1946 8/9/1946 Sep 8 1946
19 Diane,Glimp 4/30/1946 4/30/1946 30/04/1946 Apr 30 1946
2 Kevin,Brown 1977-06-03 00:00:00.000 June-3-1977
3 Roberto,Tamburello 1964-12-13 00:00:00.000 December-13-1964
4 Rob,Walters 1965-01-23 00:00:00.000 January-23-1965
RESULTS (ABRIDGED)
SELECT PT.ProductID,PT.Name, PT.ProductNumber,PT.Color, PT.SIZE,
PT.SizeUnitMeasureCode, '$' + CONVERT(VARCHAR(30), CONVERT(MONEY, PT.ListPrice))
AS LISTPRICE,
'$' + CONVERT(VARCHAR(40), CONVERT(MONEY, PT.StandardCost))AS STAMDARDCOST,
'$' + CONVERT(VARCHAR(40), CONVERT(MONEY, P.LineTotal))AS LINETOTAL,
'$' + CONVERT(VARCHAR(40), CONVERT(MONEY, P.UnitPrice))AS UNITPRICE,
P.OrderQty, P.StockedQty,
H.PurchaseOrderID,
CONVERT( DATE, H.ORDERDATE ) AS ORDER_DATE,
'$' + CONVERT(VARCHAR(40), CONVERT(MONEY, H.SubTotal))AS SUBTOTAL,
'$' + CONVERT(VARCHAR(40), CONVERT(MONEY, H.TaxAmt))AS TAXAMOUNT,
'$' + CONVERT(VARCHAR(40), CONVERT(MONEY, H.Freight))AS FREIGHT,
'$' + CONVERT(VARCHAR(40), CONVERT(MONEY, H.TotalDue))AS TOTAL,
H.EmployeeID, H.VendorID
FROM Purchasing.PurchaseOrderDetail P
INNER JOIN
Production.Product PT
ON P.ProductID = PT.ProductID
INNER JOIN
Purchasing.PurchaseOrderHeader H
ON P.PurchaseOrderID = H.PurchaseOrderID
RESULTS (ABRIDGED)
SELECT c.CustomerID, right(c.AccountNumber,5) as Account_Number, p.FirstName + ','+ p.LastName as Customer_Name,
h.CreditCardID,
right(s.CardNumber,5) + '******' as credit_Number, s.ExpMonth , s.ExpYear
FROM Sales.Customer c
ProductID Name Product
Number
Color SIZE SizeUnit
Measure
Code
LISTPRICE STAMDARD
COST
LINE
TOTAL
UNIT
PRICE
Order
Qty
Stocke
dQty
Purchase
OrderID
ORDER
DATE
SUB
TOTAL
TAX
AMOUNT
FREIGHT TOTAL Employee
ID
VendorID
403 External
Lock
Washer 3
LE-
1000
$0.00 $0.00 $136.11 $45.37 3 3 33 2/16/2002 $421.16 $33.69 $10.53 $465.38 241 87
404 External
Lock
Washer 4
LE-
1200
$0.00 $0.00 $148.93 $49.64 3 3 33 2/16/2002 $421.16 $33.69 $10.53 $465.38 241 87
405 External
Lock
Washer 9
LE-
1201
$0.00 $0.00 $136.11 $45.37 3 3 33 2/16/2002 $421.16 $33.69 $10.53 $465.38 241 87
463 Lock
Washer 4
LW-
1000
$0.00 $0.00 $142.57 $47.52 3 3 43 2/16/2002 $427.93 $34.23 $10.70 $472.86 241 37
464 Lock
Washer 5
LW-
1200
$0.00 $0.00 $136.27 $45.42 3 3 43 2/16/2002 $427.93 $34.23 $10.70 $472.86 241 37
465 Lock
Washer
10
LW-
1201
$0.00 $0.00 $149.09 $49.70 3 3 43 2/16/2002 $427.93 $34.23 $10.70 $472.86 241 37
422 Thin-Jam
Lock Nut 9
LJ-1213 $0.00 $0.00 $143.04 $47.68 3 3 63 2/24/2002 $429.35 $34.35 $10.73 $474.43 241 25
423 Thin-Jam
Lock Nut
10
LJ-1220 $0.00 $0.00 $136.74 $45.58 3 3 63 2/24/2002 $429.35 $34.35 $10.73 $474.43 241 25
424 Thin-Jam
Lock Nut 1
LJ-1420 $0.00 $0.00 $149.56 $49.85 3 3 63 2/24/2002 $429.35 $34.35 $10.73 $474.43 241 25
4 Headset
Ball
Bearings
BE-
2908
$0.00 $0.00 $171.08 $57.03 3 3 83 3/12/2002 $171.08 $13.69 $4.28 $189.04 241 85
inner join
Sales.SalesOrderHeader h
on
c.CustomerID = h.CustomerID
inner join
Sales.CreditCard s
on
h.CreditCardID = s.CreditCardID
inner join
Sales.Individual i
on
c.CustomerID = i.CustomerID
inner join
Person.Contact p
on i.ContactID =p.ContactID
CustomerID Account_Number Customer_Name CreditCardID Credit_Number ExpMonth ExpYear
11176 11176 Mason,Roberts 11843 85388****** 4 2007
11142 11142 Eduardo,Patterson 3510 02051****** 4 2007
16597 16597 Kelli,Xu 10296 62475****** 4 2007
11176 11176 Mason,Roberts 11843 85388****** 4 2007
19873 19873 Dylan,Thomas 7280 35362****** 4 2007
11176 11176 Mason,Roberts 11843 85388****** 4 2007
25299 25299 Hector,Romero 6605 07877****** 4 2007
23364 23364 Natalie,Young 3521 57777****** 4 2007
14554 14554 Isaac,Mitchell 10579 43251****** 4 2007
13249 13249 Ryan,Perry 12654 21331****** 4 2007
20162 20162 Kelsey,Nath 5226 88245****** 4 2007
24452 24452 Megan,Coleman 4633 22326****** 4 2007
11176 11176 Mason,Roberts 11843 85388****** 4 2007
17717 17717 Jeremiah,Miller 9537 95878****** 4 2007
29292 29292 Diana,Dominguez 12559 17791****** 4 2007
14953 14953 Adrienne,Gill 5845 32486****** 4 2007
11766 11766 Candace,Raman 12270 54265****** 4 2007
14067 14067 Larry,Sanz 18734 60169****** 4 2007
15886 15886 Matthew,Brown 8756 97719****** 4 2007
RESULTS (ABRIDGED)
USE MASTER
EXEC ('
select * from Purchasing.PurchaseOrderHeader WHERE VendorID = 29;');
PurchaseOrderID RevisionNumber Status EmployeeID VendorID ShipMethodID OrderDate ShipDate SubTotal TaxAmt Freight TotalDue ModifiedDate
4003 3 2 198 29 3 2004-06-14 00:00:00.000 2004-07-09 00:00:00.000 27453.60 2196.288 549.072 30198.96 2005-09-12 12:25:46.360
4004 4 2 198 29 3 2003-12-05 00:00:00.000 2003-12-30 00:00:00.000 46383.00 3710.64 927.66 51021.30 2005-09-12 12:25:46.360
4005 2 2 198 29 3 2004-02-28 00:00:00.000 2004-03-24 00:00:00.000 7425.00 594.00 148.50 8167.50 2005-09-12 12:25:46.373
4012 5 2 231 29 3 2004-07-25 00:00:00.000 2004-08-19 00:00:00.000 997680.00 79814.40 19953.60 1097448.00 2005-09-12 12:25:46.483
EXECsp_executesql
N' select * from Purchasing.PurchaseOrderHeader WHERE VendorID = @VENDORID;',
N'@VENDORID INT',
@VENDORID = 83;
PurchaseOrderID RevisionNumber Status EmployeeID VendorID ShipMethodID OrderDate ShipDate SubTotal TaxAmt Freight TotalDue ModifiedDate
1 0 4 244 83 3 2001-05-17 00:00:00.000 2001-05-26 00:00:00.000 201.04 16.0832 5.026 222.1492 2001-05-26 00:00:00.000
80 0 4 264 83 5 2002-03-12 00:00:00.000 2002-03-21 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2002-03-21 00:00:00.000
159 0 4 261 83 5 2002-07-01 00:00:00.000 2002-07-10 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2002-07-10 00:00:00.000
238 0 4 238 83 5 2002-10-07 00:00:00.000 2002-10-16 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2002-10-16 00:00:00.000
317 0 4 233 83 5 2003-05-26 00:00:00.000 2003-06-04 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-06-04 00:00:00.000
396 0 4 223 83 5 2003-07-13 00:00:00.000 2003-07-22 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-07-22 00:00:00.000
426 0 4 238 83 5 2003-09-05 00:00:00.000 2003-09-14 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-09-14 00:00:00.000
505 0 4 198 83 5 2003-09-12 00:00:00.000 2003-09-21 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-09-21 00:00:00.000
588 0 4 223 83 5 2003-09-16 00:00:00.000 2003-09-25 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-09-25 00:00:00.000
EXECsp_executesql
N' select * from Purchasing.PurchaseOrderHeader WHERE VendorID = @VENDORID;',
N'@VENDORID INT',
@VENDORID = 92
PurchaseOrderID RevisionNumber Status EmployeeID VendorID ShipMethodID OrderDate ShipDate SubTotal TaxAmt Freight TotalDue ModifiedDate
5 0 4 164 92 4 2001-05-31 00:00:00.000 2001-06-09 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2001-06-09 00:00:00.000
84 0 3 266 92 4 2002-03-12 00:00:00.000 2002-03-21 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2002-03-21 00:00:00.000
163 0 4 241 92 4 2002-07-01 00:00:00.000 2002-07-10 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2002-07-10 00:00:00.000
242 0 4 231 92 4 2002-10-23 00:00:00.000 2002-11-01 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2002-11-01 00:00:00.000
321 0 4 274 92 4 2003-05-27 00:00:00.000 2003-06-05 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-06-05 00:00:00.000
400 0 4 264 92 4 2003-07-27 00:00:00.000 2003-08-05 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-08-05 00:00:00.000
430 0 4 231 92 4 2003-09-05 00:00:00.000 2003-09-14 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-09-14 00:00:00.000
509 0 4 244 92 4 2003-09-12 00:00:00.000 2003-09-21 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-09-21 00:00:00.000
592 0 4 264 92 4 2003-09-18 00:00:00.000 2003-09-27 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-09-27 00:00:00.000
679 0 4 198 92 4 2003-09-26 00:00:00.000 2003-10-05 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-10-05 00:00:00.000
762 0 4 238 92 4 2003-10-03 00:00:00.000 2003-10-12 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-10-12 00:00:00.000
USE AdventureWorksLT2008R2
go
CREATE PROC customerdetails5
(@customerid int,
@Name nvarchar(140) output
)
as
select
@Name = FirstName + ',' + + MiddleName + ','+ LastName
from SalesLT.Customer
where CustomerID = @customerid
and FirstName + ',' + + MiddleName + ','+ LastName is not null ;
return;
customerid Customer_Name
1 Orlando,N.,Gee
2 NULL
3 Donna,F.,Carreras
4 Janet,M.,Gates
5 NULL
6 Rosmarie,J.,Carroll
7 Dominic,P.,Gash
10 Kathleen,M.,Garza
11 NULL
12 Johnny,A.,Caprio
16 Christopher,R.,Beck
18 David,J.,Liu
19 John,A.,Beaver
use AdventureWorksLT2008R2;
declare @name nvarchar(140);
exec dbo.customerdetails5 '7', @name output
print @ name;
Dominic,P.,Gash
declare @name nvarchar(140);
exec dbo.customerdetails5 '6', @name output
print @name;
Rosmarie,J.,Carroll
declare @name nvarchar(140);
exec dbo.customerdetails5 '2', @name output
print @name;
declare @name nvarchar(140);
exec dbo.customerdetails5 '11', @name output
print @name;
/* inserting data using stored procedure */
USE master
create table GRADSTUDENT
(student_id int identity(0240, 120)
constraint stud_studentid_pk primary key,
first_name nvarchar(30),
last_name nvarchar(30)
)
Go
USE master
GO
create PROC STUDENTINSERT
AS
SET NOCOUNT ON;
SELECT FIRST_NAME, LAST_NAME FROM MSSQL.dbo.student;
SELECT FIRSTNAME, LASTNAME FROM AdventureWorksLT2008R2.SalesLT.Customer;
RETURN ;
INSERT INTO dbo.GRADSTUDENT (First_Name, last_name)
Exec STUDENTINSERT;
(1115 row(s) affected)
select * from dbo.GRADSTUDENT
Student Record
student id first name last name
240 Fred Crocitto
360 J. Landry
480 Laetia Enison
600 Angel Moskowitz
720 Judith Olvsade
840 Catherine Mierzwa
960 Judy Sethi
1080 Larry Walter
1200 Maria Martin
1320 Peggy Noviello
1440 Thomas Thomas
1560 Anil Kulina
1680 Winsome Laporte
1800 N Kuehn
1920 Hiedi Lopez
2040 Mardig Abdou
2160 Ralph Alexander
2280 Sean Pineda
2400 Julita Lippen
2520 Pierre Radicola
2640 Daniel Wicelinski
2760 Gary Aung
2880 Jeff Runyan
3000 Omaira Grant
3120 Lula Oates
3240 James Reed
3360 Angela Torres
3480 Michelle Masser
3600 Hazel Lasseter
3720 James Miller
3840 John Smith
3960 Angelo Garshman
4080 Derrick Baltazar
4200 Robert Boyd
4320 Monica Waldman
4440 Gerard Biers
4560 David Essner
4680 Paul Lefkowitz
RESULTS (ABRIDGED)
/* Using cursor to mainpluate data */
use AdventureWorksdw
go
create view adventcust
as
select c.CustomerKey, c.FirstName, c.MiddleName, c.LastName, c.Gender, c.BirthDate, g.City, g.StateProvinceCode as state_code,
g.EnglishCountryRegionName as country_code from DimCustomer c
inner join
dbo.DimGeography g
on
c.GeographyKey = g.GeographyKey;
use AdventureWorksdw
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008 R2

Más contenido relacionado

Destacado

Mini Neons 2013
Mini Neons 2013 Mini Neons 2013
Mini Neons 2013 mini_neons
 
Politica exterior
Politica exteriorPolitica exterior
Politica exteriorjavier Soto
 
Jn1033 globalisation
Jn1033 globalisationJn1033 globalisation
Jn1033 globalisationMegan Knight
 
#DEP2011 -Como escalar mi negocio sin morir en el intento
#DEP2011 -Como escalar mi negocio sin morir en el intento#DEP2011 -Como escalar mi negocio sin morir en el intento
#DEP2011 -Como escalar mi negocio sin morir en el intentoAltergaia
 
Classification of Arabic Questions Using Multinomial naive Bayes and Suppo...
Classification  of  Arabic  Questions Using Multinomial naive Bayes and Suppo...Classification  of  Arabic  Questions Using Multinomial naive Bayes and Suppo...
Classification of Arabic Questions Using Multinomial naive Bayes and Suppo...Waheeb Ahmed
 
Теплица Теплица СП-3 «Синьор Помидор»
Теплица Теплица СП-3 «Синьор Помидор»Теплица Теплица СП-3 «Синьор Помидор»
Теплица Теплица СП-3 «Синьор Помидор»Al Maks
 
miss the forest : bringing together multiple taxonomies
miss the forest : bringing together multiple taxonomiesmiss the forest : bringing together multiple taxonomies
miss the forest : bringing together multiple taxonomiesHeimo Rainer
 
1ο μέρος
1ο μέρος1ο μέρος
1ο μέροςgeorgiaba
 
12 days of_christmas
12 days of_christmas12 days of_christmas
12 days of_christmaslthompson981
 
Be cool! tercer ciclo de educación primaria student's section
Be cool! tercer ciclo de educación primaria student's sectionBe cool! tercer ciclo de educación primaria student's section
Be cool! tercer ciclo de educación primaria student's section_jhony_
 
The Flying Scotsman - Trailer em fotos
The Flying Scotsman - Trailer em fotosThe Flying Scotsman - Trailer em fotos
The Flying Scotsman - Trailer em fotosJonisousa Campos
 
End user training creating a new employee
End user training   creating a new employeeEnd user training   creating a new employee
End user training creating a new employeeNicoleOlonovich
 
แนวโน้มการศึกษาห้าประการ Five emerging education trends
แนวโน้มการศึกษาห้าประการ  Five emerging education trendsแนวโน้มการศึกษาห้าประการ  Five emerging education trends
แนวโน้มการศึกษาห้าประการ Five emerging education trendsSomprasong friend Ka Nuamboonlue
 

Destacado (18)

Andrade, a. m. s. b., __
Andrade, a. m. s. b.,   __Andrade, a. m. s. b.,   __
Andrade, a. m. s. b., __
 
Mini Neons 2013
Mini Neons 2013 Mini Neons 2013
Mini Neons 2013
 
презентация Microsoft office power point
презентация Microsoft office power pointпрезентация Microsoft office power point
презентация Microsoft office power point
 
Politica exterior
Politica exteriorPolitica exterior
Politica exterior
 
Jn1033 globalisation
Jn1033 globalisationJn1033 globalisation
Jn1033 globalisation
 
Viterbi2
Viterbi2Viterbi2
Viterbi2
 
#DEP2011 -Como escalar mi negocio sin morir en el intento
#DEP2011 -Como escalar mi negocio sin morir en el intento#DEP2011 -Como escalar mi negocio sin morir en el intento
#DEP2011 -Como escalar mi negocio sin morir en el intento
 
Classification of Arabic Questions Using Multinomial naive Bayes and Suppo...
Classification  of  Arabic  Questions Using Multinomial naive Bayes and Suppo...Classification  of  Arabic  Questions Using Multinomial naive Bayes and Suppo...
Classification of Arabic Questions Using Multinomial naive Bayes and Suppo...
 
Теплица Теплица СП-3 «Синьор Помидор»
Теплица Теплица СП-3 «Синьор Помидор»Теплица Теплица СП-3 «Синьор Помидор»
Теплица Теплица СП-3 «Синьор Помидор»
 
miss the forest : bringing together multiple taxonomies
miss the forest : bringing together multiple taxonomiesmiss the forest : bringing together multiple taxonomies
miss the forest : bringing together multiple taxonomies
 
1ο μέρος
1ο μέρος1ο μέρος
1ο μέρος
 
Marketing digital
Marketing digitalMarketing digital
Marketing digital
 
12 days of_christmas
12 days of_christmas12 days of_christmas
12 days of_christmas
 
Be cool! tercer ciclo de educación primaria student's section
Be cool! tercer ciclo de educación primaria student's sectionBe cool! tercer ciclo de educación primaria student's section
Be cool! tercer ciclo de educación primaria student's section
 
The Flying Scotsman - Trailer em fotos
The Flying Scotsman - Trailer em fotosThe Flying Scotsman - Trailer em fotos
The Flying Scotsman - Trailer em fotos
 
Kirk Presentation
Kirk PresentationKirk Presentation
Kirk Presentation
 
End user training creating a new employee
End user training   creating a new employeeEnd user training   creating a new employee
End user training creating a new employee
 
แนวโน้มการศึกษาห้าประการ Five emerging education trends
แนวโน้มการศึกษาห้าประการ  Five emerging education trendsแนวโน้มการศึกษาห้าประการ  Five emerging education trends
แนวโน้มการศึกษาห้าประการ Five emerging education trends
 

Más de Sunny U Okoro

SQL Server and SSAS
SQL Server and SSAS SQL Server and SSAS
SQL Server and SSAS Sunny U Okoro
 
BI Apps Reports 5 QlikSense Desktop
BI Apps Reports 5  QlikSense DesktopBI Apps Reports 5  QlikSense Desktop
BI Apps Reports 5 QlikSense DesktopSunny U Okoro
 
MS SSAS 2008 & MDX Reports
MS SSAS 2008 &  MDX Reports MS SSAS 2008 &  MDX Reports
MS SSAS 2008 & MDX Reports Sunny U Okoro
 
DBA Oracle,SQL Server, MYSQL,DB2 Express Postgres & Sybase
DBA Oracle,SQL Server, MYSQL,DB2 Express Postgres & SybaseDBA Oracle,SQL Server, MYSQL,DB2 Express Postgres & Sybase
DBA Oracle,SQL Server, MYSQL,DB2 Express Postgres & SybaseSunny U Okoro
 
BI Apps ETL 4- Informatica PowerCenter Express
BI  Apps ETL 4- Informatica PowerCenter  ExpressBI  Apps ETL 4- Informatica PowerCenter  Express
BI Apps ETL 4- Informatica PowerCenter ExpressSunny U Okoro
 
BI Apps Reports 4 Cognos BI and Crystal Reports
BI Apps Reports 4  Cognos BI and Crystal ReportsBI Apps Reports 4  Cognos BI and Crystal Reports
BI Apps Reports 4 Cognos BI and Crystal ReportsSunny U Okoro
 
Tableau Reports and Oracle OBIEE
Tableau Reports and  Oracle OBIEETableau Reports and  Oracle OBIEE
Tableau Reports and Oracle OBIEESunny U Okoro
 
DB 3 Sybase ASE 15 & MS SQL Server
DB 3 Sybase ASE 15 & MS SQL Server DB 3 Sybase ASE 15 & MS SQL Server
DB 3 Sybase ASE 15 & MS SQL Server Sunny U Okoro
 
Advanced ETL2 Pentaho
Advanced ETL2  Pentaho Advanced ETL2  Pentaho
Advanced ETL2 Pentaho Sunny U Okoro
 
BI Apps Reports2- Oracle OBIEE & SAP Business Objects
BI Apps Reports2- Oracle OBIEE & SAP Business ObjectsBI Apps Reports2- Oracle OBIEE & SAP Business Objects
BI Apps Reports2- Oracle OBIEE & SAP Business ObjectsSunny U Okoro
 
MiS SharePoint 2010-SSRS, Power View & PowerPivot 2012
MiS SharePoint 2010-SSRS, Power View & PowerPivot 2012MiS SharePoint 2010-SSRS, Power View & PowerPivot 2012
MiS SharePoint 2010-SSRS, Power View & PowerPivot 2012Sunny U Okoro
 
BI Apps OLAP & Reports- SSAS 2012 Tabular & Multidimensional
BI Apps  OLAP & Reports- SSAS 2012 Tabular & Multidimensional BI Apps  OLAP & Reports- SSAS 2012 Tabular & Multidimensional
BI Apps OLAP & Reports- SSAS 2012 Tabular & Multidimensional Sunny U Okoro
 
Advanced SSRS 2012-SSAS,SSIS, XML, ASP.NET,Forms
Advanced SSRS 2012-SSAS,SSIS, XML, ASP.NET,FormsAdvanced SSRS 2012-SSAS,SSIS, XML, ASP.NET,Forms
Advanced SSRS 2012-SSAS,SSIS, XML, ASP.NET,FormsSunny U Okoro
 
Advanced ETL MS SSIS 2012 & Talend
Advanced ETL  MS  SSIS 2012 & Talend Advanced ETL  MS  SSIS 2012 & Talend
Advanced ETL MS SSIS 2012 & Talend Sunny U Okoro
 
DB Develop 2 Oracle 12c, DB2, MYSQL, SQL Anywhere 16
 DB Develop 2 Oracle 12c, DB2, MYSQL, SQL Anywhere 16  DB Develop 2 Oracle 12c, DB2, MYSQL, SQL Anywhere 16
DB Develop 2 Oracle 12c, DB2, MYSQL, SQL Anywhere 16 Sunny U Okoro
 
DB Security Oracle 11g-Application Context, Dynamic Views & Aduits
DB Security Oracle 11g-Application Context, Dynamic Views & AduitsDB Security Oracle 11g-Application Context, Dynamic Views & Aduits
DB Security Oracle 11g-Application Context, Dynamic Views & AduitsSunny U Okoro
 

Más de Sunny U Okoro (20)

SQL Server and SSAS
SQL Server and SSAS SQL Server and SSAS
SQL Server and SSAS
 
BI Apps Reports 5 QlikSense Desktop
BI Apps Reports 5  QlikSense DesktopBI Apps Reports 5  QlikSense Desktop
BI Apps Reports 5 QlikSense Desktop
 
MS SSAS 2008 & MDX Reports
MS SSAS 2008 &  MDX Reports MS SSAS 2008 &  MDX Reports
MS SSAS 2008 & MDX Reports
 
DBA Oracle,SQL Server, MYSQL,DB2 Express Postgres & Sybase
DBA Oracle,SQL Server, MYSQL,DB2 Express Postgres & SybaseDBA Oracle,SQL Server, MYSQL,DB2 Express Postgres & Sybase
DBA Oracle,SQL Server, MYSQL,DB2 Express Postgres & Sybase
 
Database Migration
Database MigrationDatabase Migration
Database Migration
 
Cognos Express
Cognos ExpressCognos Express
Cognos Express
 
BI Apps ETL 4- Informatica PowerCenter Express
BI  Apps ETL 4- Informatica PowerCenter  ExpressBI  Apps ETL 4- Informatica PowerCenter  Express
BI Apps ETL 4- Informatica PowerCenter Express
 
Oracle ODI
Oracle ODIOracle ODI
Oracle ODI
 
BI Apps Reports 4 Cognos BI and Crystal Reports
BI Apps Reports 4  Cognos BI and Crystal ReportsBI Apps Reports 4  Cognos BI and Crystal Reports
BI Apps Reports 4 Cognos BI and Crystal Reports
 
Tableau Reports and Oracle OBIEE
Tableau Reports and  Oracle OBIEETableau Reports and  Oracle OBIEE
Tableau Reports and Oracle OBIEE
 
DB 3 Sybase ASE 15 & MS SQL Server
DB 3 Sybase ASE 15 & MS SQL Server DB 3 Sybase ASE 15 & MS SQL Server
DB 3 Sybase ASE 15 & MS SQL Server
 
MS SSAS 2012 & MDX
MS SSAS 2012  &  MDXMS SSAS 2012  &  MDX
MS SSAS 2012 & MDX
 
Advanced ETL2 Pentaho
Advanced ETL2  Pentaho Advanced ETL2  Pentaho
Advanced ETL2 Pentaho
 
BI Apps Reports2- Oracle OBIEE & SAP Business Objects
BI Apps Reports2- Oracle OBIEE & SAP Business ObjectsBI Apps Reports2- Oracle OBIEE & SAP Business Objects
BI Apps Reports2- Oracle OBIEE & SAP Business Objects
 
MiS SharePoint 2010-SSRS, Power View & PowerPivot 2012
MiS SharePoint 2010-SSRS, Power View & PowerPivot 2012MiS SharePoint 2010-SSRS, Power View & PowerPivot 2012
MiS SharePoint 2010-SSRS, Power View & PowerPivot 2012
 
BI Apps OLAP & Reports- SSAS 2012 Tabular & Multidimensional
BI Apps  OLAP & Reports- SSAS 2012 Tabular & Multidimensional BI Apps  OLAP & Reports- SSAS 2012 Tabular & Multidimensional
BI Apps OLAP & Reports- SSAS 2012 Tabular & Multidimensional
 
Advanced SSRS 2012-SSAS,SSIS, XML, ASP.NET,Forms
Advanced SSRS 2012-SSAS,SSIS, XML, ASP.NET,FormsAdvanced SSRS 2012-SSAS,SSIS, XML, ASP.NET,Forms
Advanced SSRS 2012-SSAS,SSIS, XML, ASP.NET,Forms
 
Advanced ETL MS SSIS 2012 & Talend
Advanced ETL  MS  SSIS 2012 & Talend Advanced ETL  MS  SSIS 2012 & Talend
Advanced ETL MS SSIS 2012 & Talend
 
DB Develop 2 Oracle 12c, DB2, MYSQL, SQL Anywhere 16
 DB Develop 2 Oracle 12c, DB2, MYSQL, SQL Anywhere 16  DB Develop 2 Oracle 12c, DB2, MYSQL, SQL Anywhere 16
DB Develop 2 Oracle 12c, DB2, MYSQL, SQL Anywhere 16
 
DB Security Oracle 11g-Application Context, Dynamic Views & Aduits
DB Security Oracle 11g-Application Context, Dynamic Views & AduitsDB Security Oracle 11g-Application Context, Dynamic Views & Aduits
DB Security Oracle 11g-Application Context, Dynamic Views & Aduits
 

Último

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 

Último (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

Microsoft SQL Server 2008 R2

  • 2. Introduction The purpose of this document is to illustrate various database operations that can be performed on Microsoft SQL Server including object creations like tables and views along with data mainpulations with join operations like inner joins and functions both built in and user defined functions. Development Tools Database Platform: Microsoft SQL Server 2008R2 Applications: Microsot Excel and Power Pivot, Microsoft SQL Server Business Intelligence Development Studio, Microsoft SQL Server Reporting Services
  • 3. The date formats specified in the query statement outputmay be different from the ones represented in the table because Microsoft Excel PowerPiviot did an automatic convertation. The original query from MS SQL Server would have occupied many pages when not presented in a table format. In some currency related data the dollar symbol were added in Excel to make it easier to read. USE DB665 SELECT top(25)CUST_NO,DOB AS DATE_OF_BIRTH, F_NAME + ','+L_NAME AS CUSTOMER_NAME FROM dbo.CUSTOMER_DIM009; CUST_NO DATE_OF_BIRTH CUSTOMER_NAME ----------- ----------------------- ----------------------------------------------------------------------------------------------------- 13886 1970-09-26 00:00:00.000 Rachel,Taylor 13887 1970-10-12 00:00:00.000 Nathan,Scott 13888 1967-11-06 00:00:00.000 Ian,Brown 13889 1966-08-10 00:00:00.000 Robert,Martin 13890 1966-09-16 00:00:00.000 Jennifer,Carter 13891 1966-12-07 00:00:00.000 Aaron,Simmons 13892 1966-11-25 00:00:00.000 Spencer,Diaz 13893 1966-08-14 00:00:00.000 Dalton,Carter 13894 1969-02-25 00:00:00.000 Robyn,Ruiz 13895 1969-12-25 00:00:00.000 Isabella,Brooks 13896 1969-10-10 00:00:00.000 Hailey,Mitchell 13897 1969-11-24 00:00:00.000 Carol,Washington 13898 1969-10-11 00:00:00.000 Richard,Baker 13899 1969-08-17 00:00:00.000 Cameron,Jones 13900 1969-04-13 00:00:00.000 Isaac,Campbell 13901 1969-10-21 00:00:00.000 Oscar,Foster 13902 1969-03-18 00:00:00.000 Jeremiah,Simmons 13903 1969-11-27 00:00:00.000 Elijah,Hernandez 13904 1969-03-09 00:00:00.000 Natalie,Thompson 13905 1969-03-07 00:00:00.000 Christian,Henderson 13906 1965-06-25 00:00:00.000 Courtney,Evans 13907 1965-02-22 00:00:00.000 Misty,Xie 13908 1965-07-20 00:00:00.000 Alyssa,Diaz 13909 1965-01-21 00:00:00.000 Riley,Price 13910 1965-03-09 00:00:00.000 Isabelle,Butler (25 row(s) affected) SELECT TOP(12)CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH, F_NAME + ','+L_NAME AS CUSTOMER_NAME FROM dbo.CUSTOMER_DIM009; CUST_NO DATE_OF_BIRTH CUSTOMER_NAME 13886 9/26/1970 Rachel,Taylor 13887 10/12/1970 Nathan,Scott 13888 11/6/1967 Ian,Brown 13889 8/10/1966 Robert,Martin 13890 9/16/1966 Jennifer,Carter 13891 12/7/1966 Aaron,Simmons 13892 11/25/1966 Spencer,Diaz 13893 8/14/1966 Dalton,Carter
  • 4. 13894 2/25/1969 Robyn,Ruiz 13895 12/25/1969 Isabella,Brooks 13896 10/10/1969 Hailey,Mitchell 13897 11/24/1969 Carol,Washington (12 row(s) affected) SELECT TOP(12)CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH, F_NAME + ','+L_NAME AS CUSTOMER_NAME FROM dbo.CUSTOMER_DIM009 ORDER BY CUSTOMER_NAME; CUST_NO DATE_OF_BIRTH CUSTOMER_NAME 28866 2/5/1974 Aaron,Adams 20285 10/21/1976 Aaron,Alexander 20075 5/18/1953 Aaron,Allen 17862 3/18/1960 Aaron,Baker 12067 11/14/1944 Aaron,Bryant 21414 6/7/1974 Aaron,Butler 21151 12/22/1967 Aaron,Campbell 27916 3/19/1974 Aaron,Carter 28187 11/13/1959 Aaron,Chen 16749 5/10/1974 Aaron,Coleman 27663 9/24/1960 Aaron,Collins 18695 11/4/1969 Aaron,Diaz (12 row(s) affected) SELECT TOP(12)CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) AS AGE, GENDER, F_NAME + ','+L_NAME AS CUSTOMER_NAME FROM dbo.CUSTOMER_DIM009; CUST_NO DATE_OF_BIRTH AGE GENDER CUSTOMER_NAME 13886 9/26/1970 41 F Rachel,Taylor 13887 10/12/1970 41 M Nathan,Scott 13888 11/6/1967 44 M Ian,Brown 13889 8/10/1966 45 M Robert,Martin 13890 9/16/1966 45 F Jennifer,Carter 13891 12/7/1966 45 M Aaron,Simmons 13892 11/25/1966 45 M Spencer,Diaz 13893 8/14/1966 45 M Dalton,Carter 13894 2/25/1969 42 F Robyn,Ruiz 13895 12/25/1969 42 F Isabella,Brooks 13896 10/10/1969 42 F Hailey,Mitchell 13897 11/24/1969 42 M Carol,Washington
  • 5. (12 row(s) affected) SELECT CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) AS AGE, GENDER, F_NAME + ','+L_NAME AS CUSTOMER_NAME INTO CUSTOMER_NOT_50 FROM dbo.CUSTOMER_DIM009 WHERE DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) < 50; (10215 row(s) affected) SELECT CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) AS AGE, GENDER, F_NAME + ','+L_NAME AS CUSTOMER_NAME INTO CUSTOMER_50_ABOVE FROM dbo.CUSTOMER_DIM009 WHERE DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) >=50; (8269 row(s) affected) SELECT TOP(29)CUST_NO, DATE_OF_BIRTH, AGE, GENDER, CUSTOMER_NAME FROM CUSTOMER_NOT_50; CUST_NO DATE_OF_BIRTH AGE GENDER CUSTOMER_NAME 13886 9/26/1970 41 F Rachel,Taylor 13887 10/12/1970 41 M Nathan,Scott 13888 11/6/1967 44 M Ian,Brown 13889 8/10/1966 45 M Robert,Martin 13890 9/16/1966 45 F Jennifer,Carter 13891 12/7/1966 45 M Aaron,Simmons 13892 11/25/1966 45 M Spencer,Diaz 13893 8/14/1966 45 M Dalton,Carter 13894 2/25/1969 42 F Robyn,Ruiz 13895 12/25/1969 42 F Isabella,Brooks 13896 10/10/1969 42 F Hailey,Mitchell 13897 11/24/1969 42 M Carol,Washington 13898 10/11/1969 42 M Richard,Baker 13899 8/17/1969 42 M Cameron,Jones 13900 4/13/1969 42 M Isaac,Campbell 13901 10/21/1969 42 M Oscar,Foster 13902 3/18/1969 42 M Jeremiah,Simmons
  • 6. 13903 11/27/1969 42 M Elijah,Hernandez 13904 3/9/1969 42 F Natalie,Thompson 13905 3/7/1969 42 M Christian,Henderson 13906 6/25/1965 46 F Courtney,Evans 13907 2/22/1965 46 F Misty,Xie 13908 7/20/1965 46 F Alyssa,Diaz 13909 1/21/1965 46 F Riley,Price 13910 3/9/1965 46 F Isabelle,Butler 13911 5/26/1965 46 F Andrea,Kelly 13912 3/20/1965 46 F Caroline,Simmons 13913 9/18/1965 46 F Angela,Rogers 13914 10/23/1964 47 F Abigail,Bell SELECT TOP(29)CUST_NO, DATE_OF_BIRTH, AGE, GENDER, CUSTOMER_NAME FROM CUSTOMER_50_ABOVE; CUST_NO DATE_OF_BIRTH AGE GENDER CUSTOMER_NAME 11311 8/24/1953 58 F Gabrielle,Lopez 11312 4/3/1953 58 F Sara,Richardson 11313 2/27/1953 58 M Trevor,Jenkins 11314 12/21/1953 58 F Mya,Flores 11315 10/1/1953 58 F Hailey,Ward 11316 11/17/1953 58 M Luke,Allen 11317 9/17/1952 59 F Victoria,Russell 11318 10/26/1952 59 F Jessica,Wilson 11319 4/27/1937 74 F Jade,Bailey 11320 6/26/1937 74 F Morgan,Hill 11321 7/8/1938 73 M Terrance,Raman 11322 3/15/1938 73 F Sydney,Garcia 11323 6/20/1938 73 M Jose,Patterson 11324 5/14/1939 72 M Zachary,Anderson 11325 7/2/1939 72 M Elijah,Ross 11326 6/26/1939 72 M Rafael,Xie
  • 7. 11327 3/4/1940 71 M Jaime,Moreno 11328 1/1/1940 71 M Julian,Griffin 11329 7/25/1940 71 M Andy,Alvarez 11330 5/13/1940 71 M Ryan,Thompson 11334 3/22/1961 50 F Nicole,Brown 11335 6/24/1961 50 F Carla,Raman 11337 9/21/1961 50 M Jerome,Romero 11338 8/10/1961 50 M Frank,Navarro 11339 7/8/1961 50 M Dennis,She 11340 4/6/1936 75 F Melody,Munoz 11341 8/21/1936 75 M Randy,Zeng 11343 9/13/1958 53 M Arthur,Carlson 11344 7/24/1957 54 F Jessie,Jimenez (29 row(s) affected) select salter.SalesTerritoryKey as sale_territory_code, ltime.Fiscal_Year, ROUND(sum(final_amount),2) as total_amount from dbo.SALES_TERRITORY_DIM salter inner join dbo.sales_fact sal on salter.SalesTerritoryKey = sal.TERRITORY_KEY inner join dbo.time_dim_new ltime on ltime.time_id = sal.Time_ID where final_amount is not null group by rollup(salter.SalesTerritoryKey,ltime.Fiscal_Year); sale_territory_code Fiscal_Year total_amount 1 2002 $1,023,044.20 1 2003 $684,599.94 1 2004 $2,314,226.18 1 2005 $11,232.62 1 $4,033,102.93 2 2003 $2,264.25 2 2004 $4,954.12 2 $7,218.38 3 2003 $2,288.92 3 2004 $1,027.00 3 $3,315.92 4 2002 $1,686,610.40 4 2003 $891,724.97 4 2004 $3,730,105.20 4 2005 $10,116.62 4 $6,318,557.19 5 2003 $4,019.33 5 2004 $9,378.68 5 2005 $125.93 5 $13,523.93 6 2002 $633,276.58 6 2003 $337,036.82 6 2004 $1,203,212.14 6 2005 $11,993.36
  • 8. 6 $2,185,518.90 7 2002 $457,741.08 7 2003 $699,906.68 7 2004 $1,760,133.46 7 2005 $3,858.61 7 $2,921,639.83 8 2002 $567,255.27 8 2003 $655,538.22 8 2004 $1,971,438.57 8 2005 $3,983.34 8 $3,198,215.39 9 2002 $2,838,415.07 9 2003 $2,320,041.95 9 2004 $4,843,745.40 9 2005 $10,203.84 9 $10,012,406.26 10 2002 $608,310.61 10 2003 $769,737.46 10 2004 $2,365,129.58 10 2005 $4,664.67 10 $3,747,842.32 $32,441,341.06 (46 row(s) affected) select t.CalendarQuarter, salter.SalesTerritoryCountry as SALES_REGION, ROUND(sum(final_amount), 2) AS final_amount from dbo.SALES_TERRITORY_DIM salter inner join dbo.sales_fact sal on salter.SalesTerritoryKey = sal.TERRITORY_KEY inner join dbo.TIME_DIM t on sal.Time_ID = t.TimeKey where t.CalendarQuarter is not null group by CUBE(t.CalendarQuarter,salter.SalesTerritoryCountry); CalendarQuarter SALES_REGION final_amount 1 Australia $ 2,658,668.77 2 Australia $ 2,887,612.75 3 Australia $ 1,965,983.09 4 Australia $ 2,500,141.66 Australia $ 10,012,406.26 1 Canada $ 656,549.83 2 Canada $ 668,041.62 3 Canada $ 419,995.24 4 Canada $ 440,932.20 Canada $ 2,185,518.90 1 France $ 718,900.01 2 France $ 943,563.82 3 France $ 580,171.70 4 France $ 679,004.30 France $ 2,921,639.83 1 Germany $ 815,826.11 2 Germany $ 1,058,738.81 3 Germany $ 580,568.72 4 Germany $ 743,081.76 Germany $ 3,198,215.39 1 United Kingdom $ 984,242.73 2 United Kingdom $ 1,036,699.23 3 United Kingdom $ 776,231.37 4 United Kingdom $ 950,668.99 United $ 3,747,842.32
  • 9. Kingdom 1 United States $ 2,441,002.12 2 United States $ 3,432,570.22 3 United States $ 1,915,369.50 4 United States $ 2,586,776.52 United States $ 10,375,718.35 $ 32,441,341.06 1 $ 8,275,189.57 2 $ 10,027,226.44 3 $ 6,238,319.62 4 $ 7,900,605.43 IF OBJECT_ID ('dbo.customers', 'V') IS NOT NULL DROP VIEW dbo.customers ; GO CREATE VIEW dbo.customers WITH ENCRYPTION AS SELECT C.CUSTOMERKEY AS CUST_NO, C.FirstName + ','+C.LASTNAME AS CUSTOMER_Name, G.City, G.PostalCode, G.StateProvinceCode AS STATE_CODE, G.StateProvinceName AS STATE_NAME , G.CountryRegionCode AS COUNTRY_CODE, G.EnglishCountryRegionName AS COUNTRY_NAME FROM DBO.DimCustomer C INNER JOIN DBO.DimGeography G ON C.GeographyKey = G.GeographyKey with check use AdventureWorksDW use AdventureWorksDW select top(40)cust_no, upper (customer_name) as Customer_Name, city, postalcode, state_code, state_name, country_name, country_code from dbo.customers; cust_no Customer_Name city postalcode state_code state_name country_name country_code 11000 JON,YANG Rockhampton 4700 QLD Queensland Australia AU 11001 EUGENE,HUANG Seaford 3198 VIC Victoria Australia AU 11002 RUBEN,TORRES Hobart 7001 TAS Tasmania Australia AU 11003 CHRISTY,ZHU North Ryde 2113 NSW New South Wales Australia AU 11004 ELIZABETH,JOHNSON Wollongong 2500 NSW New South Wales Australia AU 11005 JULIO,RUIZ East Brisbane 4169 QLD Queensland Australia AU 11006 JANET,ALVAREZ Matraville 2036 NSW New South Wales Australia AU 11007 MARCO,MEHTA Warrnambool 3280 VIC Victoria Australia AU 11008 ROB,VERHOFF Bendigo 3550 VIC Victoria Australia AU 11009 SHANNON,CARLSON Hervey Bay 4655 QLD Queensland Australia AU
  • 10. 11010 JACQUELYN,SUAREZ East Brisbane 4169 QLD Queensland Australia AU 11011 CURTIS,LU East Brisbane 4169 QLD Queensland Australia AU 11012 LAUREN,WALKER Bremerton 98312 WA Washington United States US 11013 IAN,JENKINS Lebanon 97355 OR Oregon United States US 11014 SYDNEY,BENNETT Redmond 98052 WA Washington United States US 11015 CHLOE,YOUNG Burbank 91502 CA California United States US 11016 WYATT,HILL Imperial Beach 91932 CA California United States US 11017 SHANNON,WANG Sunbury 3429 VIC Victoria Australia AU 11018 CLARENCE,RAI Bendigo 3550 VIC Victoria Australia AU 11019 LUKE,LAL Langley V3A 4R2 BC British Columbia Canada CA 11020 JORDAN,KING Metchosin V9 BC British Columbia Canada CA 11021 DESTINY,WILSON Beaverton 97005 OR Oregon United States US 11022 ETHAN,ZHANG Bellingham 98225 WA Washington United States US 11023 SETH,EDWARDS Bellflower 90706 CA California United States US 11024 RUSSELL,XIE Concord 94519 CA California United States US 11025 ALEJANDRO,BECK Hawthorne 4171 QLD Queensland Australia AU 11026 HAROLD,SAI Goulburn 2580 NSW New South Wales Australia AU 11027 JESSIE,ZHAO Warrnambool 3280 VIC Victoria Australia AU 11028 JILL,JIMENEZ St. Leonards 2065 NSW New South Wales Australia AU 11029 JIMMY,MORENO Bendigo 3550 VIC Victoria Australia AU 11030 BETHANY,YUAN Cloverdale 6105 SA South Australia Australia AU 11031 THERESA,RAMOS Matraville 2036 NSW New South Wales Australia AU 11032 DENISE,STONE Melbourne 3000 VIC Victoria Australia AU 11033 JAIME,NATH Milsons Point 2061 NSW New South Wales Australia AU 11034 EBONY,GONZALEZ North Sydney 2055 NSW New South Wales Australia AU 11035 WENDY,DOMINGUEZ Cranbourne 3977 VIC Victoria Australia AU 11036 JENNIFER,RUSSELL National City 91950 CA California United States US 11037 CHLOE,GARCIA Cliffside V8Y 1L1 BC British Columbia Canada CA 11038 DIANA,HERNANDEZ Lavender Bay 2060 NSW New South Wales Australia AU
  • 11. 11039 MARC,MARTIN Wollongong 2500 NSW New South Wales Australia AU use AdventureWorksDW IF OBJECT_ID ('dbo.customers1', 'V') IS NOT NULL DROP VIEW dbo.customers1 ; GO CREATE VIEW dbo.customers1 WITH ENCRYPTION AS SELECT C.CUSTOMERKEY AS CUST_NO, C.FirstName + ','+C.LASTNAME AS CUSTOMER_Name, G.City, G.PostalCode, G.StateProvinceCode AS STATE_CODE, G.StateProvinceName AS STATE_NAME , G.CountryRegionCode AS COUNTRY_CODE, G.EnglishCountryRegionName AS COUNTRY_NAME, t.SalesTerritoryCountry as Sales_Territory_Country, t.SalesTerritoryGroup as Sales_Territory_Group, t.SalesTerritoryRegion as Sales_Territory_Region FROM DBO.DimCustomer C INNER JOIN DBO.DimGeography G ON C.GeographyKey = G.GeographyKey inner join dbo.DimSalesTerritory t on g.SalesTerritoryKey = t.SalesTerritoryKey with check option; use AdventureWorksDW select top(34) * from dbo.customers1 ; CUST_N O CUSTOMER_Name City PostalCod e STATE_COD E STATE_NAM E COUNTRY_COD E COUNTRY_NAM E Sales_Territory_Countr y Sales_Territory_Grou p Sales_Territory_Regio n 11000 Jon,Yang Rockhampto n 4700 QLD Queenslan d AU Australia Australia Pacific Australia 11001 Eugene,Huang Seaford 3198 VIC Victoria AU Australia Australia Pacific Australia 11002 Ruben,Torres Hobart 7001 TAS Tasmania AU Australia Australia Pacific Australia 11003 Christy,Zhu North Ryde 2113 NSW New South Wales AU Australia Australia Pacific Australia 11004 Elizabeth,Johnso n Wollongong 2500 NSW New South Wales AU Australia Australia Pacific Australia 11005 Julio,Ruiz East Brisbane 4169 QLD Queenslan d AU Australia Australia Pacific Australia 11006 Janet,Alvarez Matraville 2036 NSW New South Wales AU Australia Australia Pacific Australia 11007 Marco,Mehta Warrnamboo l 3280 VIC Victoria AU Australia Australia Pacific Australia 11008 Rob,Verhoff Bendigo 3550 VIC Victoria AU Australia Australia Pacific Australia 11009 Shannon,Carlson Hervey Bay 4655 QLD Queenslan d AU Australia Australia Pacific Australia 11010 Jacquelyn,Suarez East Brisbane 4169 QLD Queenslan d AU Australia Australia Pacific Australia 11011 Curtis,Lu East Brisbane 4169 QLD Queenslan d AU Australia Australia Pacific Australia 11012 Lauren,Walker Bremerton 98312 WA Washingto n US United States United States North America Northwest 11013 Ian,Jenkins Lebanon 97355 OR Oregon US United States United States North America Northwest 11014 Sydney,Bennett Redmond 98052 WA Washingto n US United States United States North America Northwest 11015 Chloe,Young Burbank 91502 CA Californi a US United States United States North America Southwest 11016 Wyatt,Hill Imperial Beach 91932 CA Californi a US United States United States North America Southwest 11017 Shannon,Wang Sunbury 3429 VIC Victoria AU Australia Australia Pacific Australia 11018 Clarence,Rai Bendigo 3550 VIC Victoria AU Australia Australia Pacific Australia 11019 Luke,Lal Langley V3A 4R2 BC British Columbia CA Canada Canada North America Canada 11020 Jordan,King Metchosin V9 BC British Columbia CA Canada Canada North America Canada 11021 Destiny,Wilson Beaverton 97005 OR Oregon US United States United States North America Northwest 11022 Ethan,Zhang Bellingham 98225 WA Washingto n US United States United States North America Northwest
  • 12. 11023 Seth,Edwards Bellflower 90706 CA Californi a US United States United States North America Southwest 11024 Russell,Xie Concord 94519 CA Californi a US United States United States North America Southwest 11025 Alejandro,Beck Hawthorne 4171 QLD Queenslan d AU Australia Australia Pacific Australia 11026 Harold,Sai Goulburn 2580 NSW New South Wales AU Australia Australia Pacific Australia 11027 Jessie,Zhao Warrnamboo l 3280 VIC Victoria AU Australia Australia Pacific Australia 11028 Jill,Jimenez St. Leonards 2065 NSW New South Wales AU Australia Australia Pacific Australia 11029 Jimmy,Moreno Bendigo 3550 VIC Victoria AU Australia Australia Pacific Australia 11030 Bethany,Yuan Cloverdale 6105 SA South Australia AU Australia Australia Pacific Australia 11031 Theresa,Ramos Matraville 2036 NSW New South Wales AU Australia Australia Pacific Australia 11032 Denise,Stone Melbourne 3000 VIC Victoria AU Australia Australia Pacific Australia 11033 Jaime,Nath Milsons Point 2061 NSW New South Wales AU Australia Australia Pacific Australia select c.CustomerKey as cust_no, c.FirstName + ',' + c.lastname as customer_name, f.SalesOrderNumber, f.UnitPrice, f.Freight, f.OrderQuantity, f.DiscountAmount, f.UnitPriceDiscountPct , f.UnitPrice * f.OrderQuantity + f.Freight - f.UnitPriceDiscountPct as Final_Amount, f.ProductKey into customer_records from FactInternetSales f right outer join dbo.DimCustomer c on c.CustomerKey = f.CustomerKey (60398 row(s) affected) use AdventureWorksDW select top(15)cust_no, customer_name, SalesOrderNumber, UnitPrice,Freight, OrderQuantity, DiscountAmount,UnitPriceDiscountPct , Final_Amount,ProductKey from customer_records cust_no customer_name SalesOrderNumber UnitPrice Freight OrderQuantity DiscountAmount UnitPriceDiscountPct Final_Amount ProductKey 11003 Christy,Zhu SO43701 $3,399.99 $85.00 1 $0.00 $0.00 $3,484.99 346 14501 Ruben,Prasad SO43700 $699.10 $17.48 1 $0.00 $0.00 $716.58 336 21768 Cole,Watson SO43697 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 310 25863 Sydney,Wright SO43699 $3,399.99 $85.00 1 $0.00 $0.00 $3,484.99 346 28389 Rachael,Martinez SO43698 $3,399.99 $85.00 1 $0.00 $0.00 $3,484.99 346 11005 Julio,Ruiz SO43704 $3,374.99 $84.37 1 $0.00 $0.00 $3,459.36 351 11011 Curtis,Lu SO43705 $3,399.99 $85.00 1 $0.00 $0.00 $3,484.99 344 16624 Albert,Alvarez SO43703 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 310 27645 Colin,Anand SO43702 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 311 16351 Martha,Xu SO43709 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 313 16517 Katrina,Raji SO43710 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 314 20042 Brad,Deng SO43708 $699.10 $17.48 1 $0.00 $0.00 $716.58 330 27616 Emma,Brown SO43707 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 312 27621 Edward,Brown SO43706 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 312 13513 Abigail,Henderson SO43712 $3,578.27 $89.46 1 $0.00 $0.00 $3,667.73 311 USE AdventureWorks SELECT TOP(20)C.ContactID ,C.Title, C.FirstName + '.'+ C.MiddleName +'.' +C.LastName AS EMPLOYEE, SUBSTRING(C.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(C.Phone,-7,11)AS AREA_CODE, C.Phone, E.Title as Job_Title, E.Gender,CONVERT(DATE, E.BirthDate)AS BIRTH_DAY, DATEDIFF(YY, E.BirthDate, CURRENT_TIMESTAMP) AS AGE, CONVERT (DATE,E.HireDate) AS HIRE_DATE, DATEDIFF(YY, E.HIREDATE, CURRENT_TIMESTAMP) AS NUM_YERS_EMPLOYEED, E.ManagerID , (E.EMPLOYEEID) AS EMP_ID FROM
  • 13. Person.Contact C INNER JOIN HumanResources.Employee E ON C.ContactID = E .ContactID ContactID Title EMPLOYEE PHONE_NUMBER AREA_CODE Phone Job_Title Gender BIRTH_DAY AGE HIRE_DATE NUM_YERS _EMPLOYEED Manager ID EMP_ID 1209 Mr Guy.R.Gilbert 555-0195 320 320-555- 0195 Production Technician - WC60 M 5/15/1972 39 7/31/1996 15 16 1 1030 Mr Kevin.F.Brown 555-0189 150 150-555- 0189 Marketing Assistant M 6/3/1977 34 2/26/1997 14 6 2 1002 555-0187 212 212-555- 0187 Engineering Manager M 12/13/1964 47 12/12/199 7 14 12 3 1290 555-0100 612 612-555- 0100 Senior Tool Designer M 1/23/1965 46 1/5/1998 13 3 4 1009 Mr Thierry.B.D'Hers 555-0183 168 168-555- 0183 Tool Designer M 8/29/1949 62 1/11/1998 13 263 5 1028 Mr David.M.Bradley 555-0172 913 913-555- 0172 Marketing Manager M 4/19/1965 46 1/20/1998 13 109 6 1070 Ms JoLynn.M.Dobney 555-0145 903 903-555- 0145 Production Supervisor - WC60 F 2/16/1946 65 1/26/1998 13 21 7 1071 Mrs Ruth.Ann.Ellerbrock 555-0130 145 145-555- 0130 Production Technician - WC10 F 7/6/1946 65 2/6/1998 13 185 8 1005 Mrs Gail.A.Erickson 555-0139 849 849-555- 0139 Design Engineer F 10/29/1942 69 2/6/1998 13 3 9 1076 Mr Barry.K.Johnson 555-0180 206 206-555- 0180 Production Technician - WC10 M 4/27/1946 65 2/7/1998 13 185 10 1006 Mr Jossef.H.Goldberg 555-0189 122 122-555- 0189 Design Engineer M 4/11/1949 62 2/24/1998 13 3 11 1001 Ms Terri.Lee.Duffy 555-0175 819 819-555- 0175 Vice President of Engineering F 9/1/1961 50 3/3/1998 13 109 12 1072 Mr Sidney.M.Higa 555-0189 424 424-555- 0189 Production Technician - WC10 M 10/1/1946 65 3/5/1998 13 185 13 1067 Mr Taylor.R.Maxwell 555-0165 508 508-555- 0165 Production Supervisor - WC50 M 5/3/1946 65 3/11/1998 13 21 14 1073 Mr Jeffrey.L.Ford 555-0185 984 984-555- 0185 Production Technician - WC10 M 8/12/1946 65 3/23/1998 13 185 15 1068 Ms Jo.A.Brown 555-0129 632 632-555- 0129 Production Supervisor - WC60 F 11/9/1946 65 3/30/1998 13 21 16
  • 14. 1074 Mrs Doris.M.Hartwig 555-0150 328 328-555- 0150 Production Technician - WC10 F 5/6/1946 65 4/11/1998 13 185 17 1069 Mr John.T.Campbell 555-0113 435 435-555- 0113 Production Supervisor - WC60 M 9/8/1946 65 4/18/1998 13 21 18 1075 Mrs Diane.R.Glimp 555-0151 202 202-555- 0151 Production Technician - WC10 F 4/30/1946 65 4/29/1998 13 185 19 1129 Mr Steven.T.Selikoff 555-0114 925 925-555- 0114 Production Technician - WC30 M 6/15/1967 44 1/2/1999 12 173 20 iF OBJECT_ID ('EMP_1', 'V') IS NOT NULL DROP VIEW EMP_1 ; GO CREATE VIEW EMP_1 WITH SCHEMABINDING AS SELECT C.ContactID ,C.Title, C.FirstName + '.'+ C.MiddleName +'.' +C.LastName AS EMPLOYEE, SUBSTRING(C.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(C.Phone,-7,11)AS AREA_CODE, C.Phone, E.Title AS JOB_TITLE , E.Gender,CONVERT(DATE, E.BirthDate)AS BIRTH_DAY, DATEDIFF(YY, E.BirthDate, CURRENT_TIMESTAMP) AS AGE, CONVERT (DATE,E.HireDate) AS HIRE_DATE, DATEDIFF(YY, E.HIREDATE, CURRENT_TIMESTAMP) AS NUM_YERS_EMPLOYEED, E.ManagerID, E.MaritalStatus , (E.EMPLOYEEID) AS EMP_ID FROM PERSON.Contact C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID WHERE C.FirstName + '.'+ C.MiddleName +'.' +C.LastName IS NOT NULL AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024) WITH CHECK OPTION UPDATE dbo.EMP_1 SET TITLE = 'Mr' where gender = 'M' /****** Script for SelectTopNRows command from SSMS ******/ SELECT TOP 12 [ContactID] ,[Title] ,[EMPLOYEE] ,[PHONE_NUMBER] ,[AREA_CODE] ,[Phone] ,[JOB_TITLE] ,[Gender] ,[BIRTH_DAY] ,[AGE] ,[HIRE_DATE] ,[NUM_YERS_EMPLOYEED] ,[ManagerID] ,[MaritalStatus] ,[EMP_ID] FROM [AdventureWorks].[dbo].[EMP_1] WHERE GENDER = 'M' (12 row(s) affected)
  • 15. UPDATE dbo.EMP_1 SET TITLE = 'Mrs' OUTPUT DELETED.TITLE AS OLDTITLE, INSERTED.TITLE AS NEWTITLE where Gender = 'F' AND MaritalStatus = 'M' OLDTITLE NEWTITLE -------- -------- NULL Mrs NULL Mrs Ms. Mrs Ms. Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs Ms. Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs ContactID Title EMPLOYEE PHONE_NUMBER AREA_CODE Phone JOB_TITLE Gender BIRTH_DAY AGE HIRE_DATE NUM_YERS_EMPLOYEED ManagerID MaritalStatus EMP_ID 1209 Mr Guy.R.Gilbert 555-0195 320 320-555- 0195 Production Technician - WC60 M 5/15/1972 39 7/31/1996 15 16 M 1 1030 Mr Kevin.F.Brown 555-0189 150 150-555- 0189 Marketing Assistant M 6/3/1977 34 2/26/1997 14 6 S 2 1009 Mr Thierry.B.D'Hers 555-0183 168 168-555- 0183 Tool Designer M 8/29/1949 62 1/11/1998 13 263 M 5 1028 Mr David.M.Bradley 555-0172 913 913-555- 0172 Marketing Manager M 4/19/1965 46 1/20/1998 13 109 S 6 1076 Mr Barry.K.Johnson 555-0180 206 206-555- 0180 Production Technician - WC10 M 4/27/1946 65 2/7/1998 13 185 S 10 1006 Mr Jossef.H.Goldberg 555-0189 122 122-555- 0189 Design Engineer M 4/11/1949 62 2/24/1998 13 3 M 11 1072 Mr Sidney.M.Higa 555-0189 424 424-555- 0189 Production Technician - WC10 M 10/1/1946 65 3/5/1998 13 185 M 13 1067 Mr Taylor.R.Maxwell 555-0165 508 508-555- 0165 Production Supervisor - WC50 M 5/3/1946 65 3/11/1998 13 21 M 14 1073 Mr Jeffrey.L.Ford 555-0185 984 984-555- 0185 Production Technician - WC10 M 8/12/1946 65 3/23/1998 13 185 S 15 1069 Mr John.T.Campbell 555-0113 435 435-555- 0113 Production Supervisor - WC60 M 9/8/1946 65 4/18/1998 13 21 M 18 1129 Mr Steven.T.Selikoff 555-0114 925 925-555- 0114 Production Technician - WC30 M 6/15/1967 44 1/2/1999 12 173 M 20 1231 Mr Peter.J.Krebs 555-0196 913 913-555- 0196 Production Control Manager M 12/4/1972 39 1/2/1999 12 148 M 21
  • 16. NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs NULL Mrs (79 row(s) affected) UPDATE dbo.EMP_1 SET TITLE = 'Ms' OUTPUT DELETED.TITLE AS OLDTITLE, INSERTED.TITLE AS NEWTITLE where MaritalStatus = 'S' AND GENDER = 'F' OLDTITLE NEWTITLE -------- -------- Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms
  • 17. Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms Ms (32 row(s) affected) SELECT TOP(30)CONTACTID, GENDER, MARITALSTATUS, TITLE, EMPLOYEE FROM dbo.EMP_1 CONTACTID GENDER MARITALSTATUS TITLE EMPLOYEE 1209 M M Mr Guy.R.Gilbert 1030 M S Mr Kevin.F.Brown 1009 M M Mr Thierry.B.D'Hers 1028 M S Mr David.M.Bradley 1070 F S Ms JoLynn.M.Dobney 1071 F M Mrs Ruth.Ann.Ellerbrock 1005 F M Mrs Gail.A.Erickson 1076 M S Mr Barry.K.Johnson 1006 M M Mr Jossef.H.Goldberg 1001 F S Ms Terri.Lee.Duffy 1072 M M Mr Sidney.M.Higa 1067 M M Mr Taylor.R.Maxwell 1073 M S Mr Jeffrey.L.Ford 1068 F S Ms Jo.A.Brown 1074 F M Mrs Doris.M.Hartwig 1069 M M Mr John.T.Campbell 1075 F M Mrs Diane.R.Glimp 1129 M M Mr Steven.T.Selikoff 1231 M M Mr Peter.J.Krebs 1172 M S Mr Stuart.V.Munson 1173 M S Mr Greg.F.Alderson 1113 M S Mr David.N.Johnson 1054 M S Mr Zheng.W.Mu 1097 M M Mr Ivo.William.Salmre 1156 M S Mr Paul.B.Komosinski 1258 M S Mr Ashvini.R.Sharma 1199 M M Mr Kendall.C.Keil 1242 F M Mrs Paula.M.Barreto de Mattos 1140 M S Mr Alejandro.E.McGuel 1122 M S Mr Garrett.R.Young (30 row(s) affected) USE MSSQL CREATE TABLE CUSTOMER (CUST_NO INT IDENTITY(02348, 112) CONSTRAINT CUSTCUST_NO_PK PRIMARY KEY , FIRST_NAME NVARCHAR(33) CONSTRAINT CUSTFNAME_NN NOT NULL , LAST_NAME NVARCHAR(25) CONSTRAINT CUSTLASTNAME_NN NOT NULL ,GENDER CHAR(10) CONSTRAINT CUSTGENDER_NN NOT NULL ,CUST_ADDRESS NVARCHAR(55) CONSTRAINT CUSTCUST_ADD_NN NOT NULL , CITY NVARCHAR(40) CONSTRAINT CUSTCITY_NN NOT NULL , CUST_STATE NVARCHAR(25) CONSTRAINT CUSTSTATE_CK CHECK (CUST_STATE iN('IL', 'DC', 'CA', 'TX', 'AZ', 'MD', 'GA', 'il','dc','ca','tx','az', 'md','ga')) , ZIP_CODE INT )
  • 18. USE MSSQL insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER) values ('Jackie', 'Brown', '1818 S Washington BLVD SE APT 227', 'Washington', 'DC', 20021, 'Female'); CREATE TRIGGER CUSTOMERS ON dbo.customer instead of insert as print 'The data has been sucessfully inserted to the database.'; insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER) values ('Sandy', 'Jack', '4040 N Washington BLVD SW ', 'Washington', 'DC',20032, 'Male'), ('Christopher', 'McLean', '24 N.Illinios Ave NE', 'Washington', 'DC',20011, 'Male'), ('RoseMary', 'BlueGrass', '20 S Capitol RD SE', 'Washington', 'DC',20018, 'Female'), ('Cassandra', 'Morgan', '1010 W New York Ave NW ', 'Washington', 'DC',20030, 'Female'), ('Diana', 'Mark', '85 S A ST SW', 'Washington', 'DC',20059, 'Female'); The data has been sucessfully inserted to the database. (5 row(s) affected) insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER) values ('Jayson', 'Alex', '1830 S Cider BLVD NW', 'Washington', 'DC', 20032, 'Male'), ('JAEGERS', 'SHU', '40 S Washington BLVD SW ', 'Washington', 'DC', 20011, 'Female'), ('Nicholas', 'Nicholas', '24 N California Ave NE Apt 4D', 'Washington', 'DC',20018, 'Male'), ('Liz', 'Steward', '120 S Ohio Ave SE', 'Washington', 'DC',20022, 'Female'), ('Austin', 'Martin', '11 W New Mexico Ave NW APT 21B', 'Washington', 'DC',20030, 'female'), ('LOPEZ', 'PALISBO', '85 S A ST SW', 'Washington', 'DC',20059, 'Male'); The data has been sucessfully inserted to the database. (6 row(s) affected) insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER) values ('DEIDRA', 'SYDNEY', '24 18th ST SE ', 'Washington', 'DC',20017, 'Female'), ('EAGLEN', 'EASTON', '120 S Jackson Ave SE', 'Washington','DC',20022, 'Female'), ('SHANDRA', 'TABOR', '101 W Georgia Ave NW ', 'Washington', 'DC',20040, 'female'), ('DOROTHY', 'Paul-Walker', '35 E Delaware Ave SE', 'Washington', 'DC',20052, 'female'), ('DEINES', 'JOHN', '11 W Georgia Ave', 'Silver Springs', 'MD',20901 , 'Female'), ('WALTER', 'TIMOTHY', '35 E Pine Grove Ave NE', 'Washington', 'DC', 20052, 'Male'), ('JONATHAN', 'BRUCE', '10 justice Drive SW' , 'Washington',' DC', 20040, 'Male'); The data has been sucessfully inserted to the database. (7 row(s) affected) insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER) values ('MILTON', 'ROLAND', '35 W Union Drive NE', 'Washington', 'DC',20051,'Male'); The data has been sucessfully inserted to the database. (1 row(s) affected) USE MSSQL SELECT * FROM CUSTOMER CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY CUST_STATE ZIP_CODE ----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- ----------------------------- ----------- ------------------------- -----------
  • 19. 2348 Jackie Brown Female 1818 S Washington BLVD SE APT 227 Washington DC 20021 (1 row(s) affected) insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER) values ('Sandy', 'Jack', '4040 N Washington BLVD SW ', 'Washington', 'DC',20032, 'Male'), ('Christopher', 'McLean', '24 N.Illinios Ave NE', 'Washington', 'DC',20011, 'Male'), ('RoseMary', 'BlueGrass', '20 S Capitol RD SE', 'Washington', 'DC',20018, 'Female'), ('Cassandra', 'Morgan', '1010 W New York Ave NW ', 'Washington', 'DC',20030, 'Female'), ('Diana', 'Mark', '85 S A ST SW', 'Washington', 'DC',20059, 'Female'); insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER) values ('Jayson', 'Alex', '1830 S Cider BLVD NW', 'Washington', 'DC', 20032, 'Male'), ('JAEGERS', 'SHU', '40 S Washington BLVD SW ', 'Washington', 'DC', 20011, 'Female'), ('Nicholas', 'Nicholas', '24 N California Ave NE Apt 4D', 'Washington', 'DC',20018, 'Male'), ('Liz', 'Steward', '120 S Ohio Ave SE', 'Washington', 'DC',20022, 'Female'), ('Austin', 'Martin', '11 W New Mexico Ave NW APT 21B', 'Washington', 'DC',20030, 'female'), ('LOPEZ', 'PALISBO', '85 S A ST SW', 'Washington', 'DC',20059, 'Male'); insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER) values ('MILTON', 'ROLAND', '35 W Union Drive NE', 'Washington', 'DC',20051,'Male'); insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER) values ('FREDDIE', 'WADE', '2020 Rosevelt BLVD SW', 'Washington', 'DC',20049, 'Male'), ('ZADRA', 'WALCUTT', '25 E Balitmore Pk', 'Silver Springs', 'MD', 20901 , 'Female'), ('TERRENCE', 'KENT', '101 W Georgia Ave Apt 18B', 'Silver Springs', 'MD',20901, 'Male'), ('PHYLLIS', 'SERGIO', '45 Steveson Drv Apt 5G','Silver Springs', 'MD',20901, 'Female'), ('WALCH', 'GENE', '80 Baker BLVD', 'Silver Springs', 'DC',20049, 'Male'); insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER) values ('BRETT', 'WALCUTT', '25 E Balitmore Pk', 'Silver Springs', 'MD', 20901 , 'Female'), ('LABEAU', 'KENT', '50 W Ocean Drive Ave Apt 18B', 'Silver Springs', 'MD',20901, 'Male'), ('SARA', 'LABBADIA', '45 Steveson Drv Apt 5G','Silver Springs', 'MD',20901, 'Female'), ('ANDREA', 'LESTER', '12 St.Paul St', 'Oxon Hill ', 'MD', 20745 ,' Female'), ('CHARLIE', 'Choice', '21 Adams BLVD', 'Oxon Hill', 'MD',20745, 'Male'), ('REGINALD', 'ANGEL', '25 E Washington Pk', 'Oxon Hil', 'MD', 20745 , 'Male'); SELECT * FROM CUSTOMER CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY CUST_STATE ZIP_CODE 2348 Jackie Brown Female 1818 S Washington BLVD SE APT 227 Washington DC 20021 2460 Sandy Jack Male 4040 N Washington BLVD SW Washington DC 20032 2572 Christopher McLean Male 24 N.Illinios Ave NE Washington DC 20011 2684 RoseMary BlueGrass Female 20 S Capitol RD SE Washington DC 20018 2796 Cassandra Morgan Female 1010 W New York Ave NW Washington DC 20030 2908 Diana Mark Female 85 S A ST SW Washington DC 20059 3020 Jayson Alex Male 1830 S Cider BLVD NW Washington DC 20032 3132 JAEGERS SHU Female 40 S Washington BLVD SW Washington DC 20011 3244 Nicholas Nicholas Male 24 N California Ave NE Apt 4D Washington DC 20018 3356 Liz Steward Female 120 S Ohio Ave SE Washington DC 20022 3468 Austin Martin Female 11 W New Mexico Ave NW APT 21B Washington DC 20030 3580 LOPEZ PALISBO Male 85 S A ST SW Washington DC 20059 4476 MILTON ROLAND Male 35 W Union Drive NE Washington DC 20051
  • 20. 4588 FREDDIE WADE Male 2020 Rosevelt BLVD SW Washington DC 20049 4700 ZADRA WALCUTT Female 25 E Balitmore Pk Silver Springs MD 20901 4812 TERRENCE KENT Male 101 W Georgia Ave Apt 18B Silver Springs MD 20901 4924 PHYLLIS SERGIO Female 45 Steveson Drv Apt 5G Silver Springs MD 20901 5036 WALCH GENE Male 80 Baker BLVD Silver Springs DC 20049 5148 BRETT WALCUTT Female 25 E Balitmore Pk Silver Springs MD 20901 5260 LABEAU KENT Male 50 W Ocean Drive Ave Apt 18B Silver Springs MD 20901 5372 SARA LABBADIA Female 45 Steveson Drv Apt 5G Silver Springs MD 20901 5484 ANDREA LESTER Female 12 St.Paul St Oxon Hill MD 20745 5596 CHARLIE Choice Male 21 Adams BLVD Oxon Hill MD 20745 5708 REGINALD ANGEL Male 25 E Washington Pk Oxon Hil MD 20745 DELETE DBO.CUSTOMER; ALTER TRIGGER [dbo].[CUSTOMERS] ON [dbo].[CUSTOMER] AFTER INSERT as print 'DATA ERROR PLEASE RE-INSERT'; ROLLBACK TRAN; USE [MSSQL] GO insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER) values('washington', 'Wells', '20 Lakeshore Driv ApT 34C', 'Chicago', 'IL', 60660, 'Male'), ('TED', 'SERGIO', '1818 N Paulina','Chicago', 'IL',60632, 'Male'), ('JULIA', 'QUNICY', '8O Chicago RD Apt 227', 'Chicago', 'IL',60633, 'Female'), ('EMILY', 'KELLY', '12 S Kedize Apt 33GH', 'Chicago', 'IL', 606421 , 'Female'), ('CLAYTON', 'Cliford', '20 Lasalle Street Apt 40b ', 'Chicago', 'IL', 60602, 'Male'), ('RUBY', 'JESSIE', '2020 S State Street','Chicago', 'IL', 60639, 'Female'), ('CLAUDE', 'JAMIE', '12 S Dearbon Apt 29 H', 'Chicago', 'IL', 606421 , 'Male'), ('MARILYN', 'FERNANDO', '12 Jane Adams Blvd', 'Chicago', 'IL', 60604, 'Female'), ('NEIL', 'PAVLIKOWSKI', '20 N State Street','Chicago', 'IL', 60639, 'Female'), ('PAVLICK', 'JAVIER', '200 W Howard Ave Apt 40b ', 'Chicago', 'IL', 606003, 'Male'), ('LOUISE', 'JESSIE', '40 S Abbott Street Apt 18H','Chicago', 'IL', 60629, 'Female'); DATA ERROR PLEASE RE-INSERT Msg 3609, Level 16, State 1, Line 2 The transaction ended in the trigger. The batch has been aborted. SELECT * FROM CUSTOMER; NO ROWS DROP TRIGGER CUSTOMERS; insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER) values('washington', 'Wells', '20 Lakeshore Driv ApT 34C', 'Chicago', 'IL', 60660, 'Male'), ('TED', 'SERGIO', '1818 N Paulina','Chicago', 'IL',60632, 'Male'), ('JULIA', 'QUNICY', '8O Chicago RD Apt 227', 'Chicago', 'IL',60633, 'Female'), ('EMILY', 'KELLY', '12 S Kedize Apt 33GH', 'Chicago', 'IL', 606421 , 'Female'), ('CLAYTON', 'Cliford', '20 Lasalle Street Apt 40b ', 'Chicago', 'IL', 60602, 'Male'), ('RUBY', 'JESSIE', '2020 S State Street','Chicago', 'IL', 60639, 'Female'), ('CLAUDE', 'JAMIE', '12 S Dearbon Apt 29 H', 'Chicago', 'IL', 606421 , 'Male'), ('MARILYN', 'FERNANDO', '12 Jane Adams Blvd', 'Chicago', 'IL', 60604, 'Female'), ('NEIL', 'PAVLIKOWSKI', '20 N State Street','Chicago', 'IL', 60639, 'Female'), ('PAVLICK', 'JAVIER', '200 W Howard Ave Apt 40b ', 'Chicago', 'IL', 606003, 'Male'), ('LOUISE', 'JESSIE', '40 S Abbott Street Apt 18H','Chicago', 'IL', 60629, 'Female');
  • 21. insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER) OUTPUT INSERTED.* values ('Sandy', 'Jack', '4040 N Washington BLVD SW ', 'Washington', 'DC',20032, 'Male'), ('Christopher', 'McLean', '24 N.Illinios Ave NE', 'Washington', 'DC',20011, 'Male'), ('RoseMary', 'BlueGrass', '20 S Capitol RD SE', 'Washington', 'DC',20018, 'Female'), ('Cassandra', 'Morgan', '1010 W New York Ave NW ', 'Washington', 'DC',20030, 'Female'), ('Diana', 'Mark', '85 S A ST SW', 'Washington', 'DC',20059, 'Female'); CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY CUST_STATE ZIP_CODE ----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- ----------------------------- ----------- ------------------------- ----------- 10860 Sandy Jack Male 4040 N Washington BLVD SW Washington DC 20032 10972 Christopher McLean Male 24 N.Illinios Ave NE Washington DC 20011 11084 RoseMary BlueGrass Female 20 S Capitol RD SE Washington DC 20018 11196 Cassandra Morgan Female 1010 W New York Ave NW Washington DC 20030 11308 Diana Mark Female 85 S A ST SW Washington DC 20059 (5 row(s) affected) insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE, GENDER) OUTPUT INSERTED.* values ('Jayson', 'Alex', '1830 S Cider BLVD NW', 'Washington', 'DC', 20032, 'Male'), ('JAEGERS', 'SHU', '40 S Washington BLVD SW ', 'Washington', 'DC', 20011, 'Female'), ('Nicholas', 'Nicholas', '24 N California Ave NE Apt 4D', 'Washington', 'DC',20018, 'Male'), ('Liz', 'Steward', '120 S Ohio Ave SE', 'Washington', 'DC',20022, 'Female'), ('Austin', 'Martin', '11 W New Mexico Ave NW APT 21B', 'Washington', 'DC',20030, 'female'), ('LOPEZ', 'PALISBO', '85 S A ST SW', 'Washington', 'DC',20059, 'Male'); CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY CUST_STATE ZIP_CODE ----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- ----------------------------- ----------- ------------------------- ----------- 11420 Jayson Alex Male 1830 S Cider BLVD NW Washington DC 20032 11532 JAEGERS SHU Female 40 S Washington BLVD SW Washington DC 20011 11644 Nicholas Nicholas Male 24 N California Ave NE Apt 4D Washington DC 20018 11756 Liz Steward Female 120 S Ohio Ave SE Washington DC 20022 11868 Austin Martin female 11 W New Mexico Ave NW APT 21B Washington DC 20030 11980 LOPEZ PALISBO Male 85 S A ST SW Washington DC 20059 (6 row(s) affected) insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER) OUTPUT INSERTED.* values ('MILTON', 'ROLAND', '35 W Union Drive NE', 'Washington', 'DC',20051,'Male'), ('FREDDIE', 'WADE', '2020 Rosevelt BLVD SW', 'Washington', 'DC',20049, 'Male'), ('ZADRA', 'WALCUTT', '25 E Balitmore Pk', 'Silver Springs', 'MD', 20901 , 'Female'), ('TERRENCE', 'KENT', '101 W Georgia Ave Apt 18B', 'Silver Springs', 'MD',20901, 'Male'), ('PHYLLIS', 'SERGIO', '45 Steveson Drv Apt 5G','Silver Springs', 'MD',20901, 'Female'), ('WALCH', 'GENE', '80 Baker BLVD', 'Silver Springs', 'DC',20049, 'Male'), ('BRETT', 'WALCUTT', '25 E Balitmore Pk', 'Silver Springs', 'MD', 20901 , 'Female'), ('LABEAU', 'KENT', '50 W Ocean Drive Ave Apt 18B', 'Silver Springs', 'MD',20901, 'Male'), ('SARA', 'LABBADIA', '45 Steveson Drv Apt 5G','Silver Springs', 'MD',20901, 'Female'); CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY CUST_STATE ZIP_CODE ----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- ----------------------------- ----------- ------------------------- ----------- 12092 MILTON ROLAND Male 35 W Union Drive NE Washington DC 20051 12204 FREDDIE WADE Male 2020 Rosevelt BLVD SW Washington DC 20049 12316 ZADRA WALCUTT Female 25 E Balitmore Pk Silver Springs MD 20901 12428 TERRENCE KENT Male 101 W Georgia Ave Apt 18B Silver Springs MD 20901
  • 22. 12540 PHYLLIS SERGIO Female 45 Steveson Drv Apt 5G Silver Springs MD 20901 12652 WALCH GENE Male 80 Baker BLVD Silver Springs DC 20049 12764 BRETT WALCUTT Female 25 E Balitmore Pk Silver Springs MD 20901 12876 LABEAU KENT Male 50 W Ocean Drive Ave Apt 18B Silver Springs MD 20901 12988 SARA LABBADIA Female 45 Steveson Drv Apt 5G Silver Springs MD 20901 ALTER TRIGGER dbo.CUSTOMERS ON dbo.CUSTOMER AFTER UPDATE AS SELECT last_name +' ' + 'record has been updated ' from inserted; GO UPDATE DBO.CUSTOMER SET LAST_NAME = 'Richardson' WHERE cust_no = 9852 Richardson record has been updated (1 row(s) affected) insert into CUSTOMER(FIRST_NAME, LAST_NAME, CUST_ADDRESS , city, CUST_STATE, ZIP_CODE,GENDER) values ('Derick', 'Rose', '12 S Racine Ave Apt 29 H', 'Chicago', 'IL', 606429 , 'Male'), ('Ralph', 'Nadim', '204 Kimball Rd Apt 20G', 'Chicago', 'IL', 60624, 'Male'), ('Latoya', 'Kadeem', '11 Addison Apt 20c ', 'Chicago', 'IL', 60624, 'Female'), ('lisa', 'Brad', '80 West 83rd Apt 2 ', 'Chicago', 'IL', 60654, 'Female'), ('Kadyn', 'Michaels', '200 East 73rd Apt 2 ', 'Chicago', 'IL', 60624, 'Female'), ('Latrice', 'Abby', '40 Glenwood Aot 23', 'Chicago', 'IL', 60632, 'Female'), ('Thomas', 'Martin', '12 N Javis Apt 9 H3', 'Evaston', 'IL', 606721 , 'Male'), ('Bernice', 'Authur', '19 S Highway 6 Apt 3', 'Evaston', 'IL', 60704, 'Female'), ('Betsy', 'Chris', '20 N Loyola Street','Evaston', 'IL', 60639, 'Female'), ('Akon', 'Cider', '200 W Brodway Ave Apt 40 ', 'Evaston', 'IL', 60704, 'Male'), ('Richard', 'King', '40 S Theather Street Apt 1', 'Evaston', 'IL', 60704, 'Female'), ('Derick', 'Stone', '12 S Race Ave Apt 29 H', 'Evaston', 'IL', 60704 , 'Male'), ('Mark', 'Harison', '1010 S Centinela Ave Apt 2B', 'Los Angles ', 'CA', 90034 , 'Male'), ('TINA', 'Clark', '20 N SunSet Blvd 2C','Los Angeles', 'CA', 90034, 'Female'), ('MARILYN', 'Wash', '12 King Drv', 'Los Angeles', 'CA', 90034, 'Female'), ('MARILYN', 'Wash', '12 King Drv', 'Los Angeles', 'CA', 90034, 'Female'), ('Hamilton', 'Anderson', '050 N Ocean Drv', 'Los Angeles','CA', 90034, 'Female'), ('CHAD', 'ALFRED', '090 S liberity PK', 'Los Angeles','CA', 90034, 'Male'), ('Jones', 'Don', '4040 S Central ','Los Angeles','CA', 90034, 'Male'), ('Britney', 'Hancock', '90 S Hollywood', 'Los Angeles','CA', 90034, 'Female'), ('Geroge', 'Jefferson', '40 S Empire Drv ','Los Angeles','CA', 90034, 'Male'), ('Madilyn', 'Jaken', '10 Beach Drive', 'Los Angeles','CA', 90035, 'Female'), ('Chuck', 'Chi', '30 Mall Drive ', 'Los Angeles','CA', 90035, 'Male'), ('Cesar', 'Carlos', '40 S Central ','Los Angeles','CA', 90034, 'Male'), ('Nadine', 'Corby', '19 Pine Lane ', 'Los Angeles','CA', 90033, 'Female'), ('Abraham', 'Abraham', '40 S Airforce Rd ','Los Angeles ','CA', 90034, 'Male'), ('udo', 'udo', '21 E Disney Rd ','Los Angeles','CA', 90034, 'Male'), ('Octavia', 'Lee', '10 Santa Monica Drive', 'Los Angeles','CA', 90035, 'Female'), ('Abel', 'Adon', '30 santa jose drv ', 'Los Angeles','CA', 90035, 'Male'), ('Nancy', 'William', '40 S lake Rd ','Los Angeles','CA', 90034, 'Male'), ('Monica', 'Corby', '19 Cider Lane ', 'Los Angeles','CA', 90033, 'Female'), ('Chris', 'Abraham', '40 S Airforce Rd ','Los Angeles','CA', 90034, 'Male'), ('Diane', 'Austine', '90 Sony Drive ', 'Los Angeles','CA', 90035, 'Female'), ('Darlene', 'Dion', '92 Church Blvd', 'Los Angeles','CA', 90035, 'Female'), ('Linda', 'Creed', '12 Airport Highway', 'Los Angeles','CA', 90035, 'Female' ), ('Carson', 'Creed', '12 Airport Highway', 'Los Angeles','CA', 90035, 'Male'), ('Perry', 'Tyson', '1150 S King Ave Apt 12B', 'Atlanta' , 'GA', 30301 , 'Male'), ('Aaliyah', 'Clark', '20 N Flowery Branch Road','Los Angeles', 'CA', 30301 , 'Female'), ('Abbigail', 'Udeh', ' 980 Best Friend Road APT 7H', 'Atlanta' , 'GA', 30301, 'Female'), ('Uehudah', 'Urban', '040 Sugar Grov', 'Atlanta' , 'GA', 30303, 'Male'), ('Hamilton', 'Hakeem', '50 Tower Rd', 'Atlanta' , 'GA', 30303, 'Male'),
  • 23. ('Adrianna', 'Gary', '66 Settingdown Road Apt 11Y ','Atlanta' , 'GA', 30304, 'Female'), ('Macie', 'Gabriel', '190 ClockTower Drv', 'Atlanta' , 'GA', 90034, 'Female'), ('Jaiden', 'Jacquez', '40 Knights St ','Atlanta' , 'GA', 30303, 'Male'), ('Felipe', 'Elton', '50 Music Rd', 'Atlanta' , 'GA', 30304, 'Male'); Select * from dbo.customer CUST_NO FIRST_NAME LAST_NAME GENDER CUST_ADDRESS CITY CUST_STATE ZIP_CODE 9628 washington Wells Male 20 Lakeshore Driv ApT 34C Chicago IL 60660 9740 TED SERGIO Male 1818 N Paulina Chicago IL 60632 9852 JULIA Richardson Female 8O Chicago RD Apt 227 Chicago IL 60633 9964 EMILY KELLY Female 12 S Kedize Apt 33GH Chicago IL 606421 10076 CLAYTON Cliford Male 20 Lasalle Street Apt 40b Chicago IL 60602 10188 RUBY JESSIE Female 2020 S State Street Chicago IL 60639 10300 CLAUDE JAMIE Male 12 S Dearbon Apt 29 H Chicago IL 606421 10412 MARILYN FERNANDO Female 12 Jane Adams Blvd Chicago IL 60604 10524 NEIL PAVLIKOWSKI Female 20 N State Street Chicago IL 60639 10636 PAVLICK JAVIER Male 200 W Howard Ave Apt 40b Chicago IL 606003 10748 LOUISE JESSIE Female 40 S Abbott Street Apt 18H Chicago IL 60629 10860 Sandy Jack Male 4040 N Washington BLVD SW Washington DC 20032 10972 Christopher Peterson Male 24 N.Illinios Ave NE Washington DC 20011 11084 RoseMary BlueGrass Female 20 S Capitol RD SE Washington DC 20018 11196 Cassandra Morgan Female 1010 W New York Ave NW Washington DC 20030 11308 Diana Mark Female 85 S A ST SW Washington DC 20059 11420 Jayson Alex Male 1830 S Cider BLVD NW Washington DC 20032 11532 JAEGERS SHU Female 40 S Washington BLVD SW Washington DC 20011 11644 Nicholas Nicholas Male 24 N California Ave NE Apt 4D Washington DC 20018 11756 Liz Steward Female 120 S Ohio Ave SE Washington DC 20022 11868 Austin Martin Female 11 W New Mexico Ave NW APT 21B Washington DC 20030 11980 LOPEZ PALISBO Male 85 S A ST SW Washington DC 20059 15900 Derick Rose Male 12 S Racine Ave Apt 29 H Chicago IL 606429 16012 Ralph Nadim Male 204 Kimball Rd Apt 20G Chicago IL 60624 16124 Latoya Kadeem Female 11 Addison Apt 20c Chicago IL 60624 16236 lisa Brad Female 80 West 83rd Apt 2 Chicago IL 60654 16348 Kadyn Michaels Female 200 East 73rd Apt 2 Chicago IL 60624 16460 Latrice Abby Female 40 Glenwood Aot 23 Chicago IL 60632 16572 Thomas Martin Male 12 N Javis Apt 9 H3 Evaston IL 606721 16684 Bernice Authur Female 19 S Highway 6 Apt 3 Evaston IL 60704 16796 Betsy Chris Female 20 N Loyola Street Evaston IL 60639 16908 Akon Cider Male 200 W Brodway Ave Apt 40 Evaston IL 60704
  • 24. 17020 Richard King Female 40 S Theather Street Apt 1 Evaston IL 60704 17132 Derick Stone Male 12 S Race Ave Apt 29 H Evaston IL 60704 17244 Mark Harison Male 1010 S Centinela Ave Apt 2B Los Angles CA 90034 17356 TINA Clark Female 20 N SunSet Blvd 2C Los Angeles CA 90034 17468 MARILYN Wash Female 12 King Drv Los Angeles CA 90034 17580 MARILYN Wash Female 12 King Drv Los Angeles CA 90034 17692 Hamilton Anderson Female 050 N Ocean Drv Los Angeles CA 90034 17804 CHAD ALFRED Male 090 S liberity PK Los Angeles CA 90034 17916 Jones Don Male 4040 S Central Los Angeles CA 90034 18028 Britney Hancock Female 90 S Hollywood Los Angeles CA 90034 18140 Geroge Jefferson Male 40 S Empire Drv Los Angeles CA 90034 18252 Madilyn Jaken Female 10 Beach Drive Los Angeles CA 90035 18364 Chuck Chi Male 30 Mall Drive Los Angeles CA 90035 18476 Cesar Carlos Male 40 S Central Los Angeles CA 90034 18588 Nadine Corby Female 19 Pine Lane Los Angeles CA 90033 18700 Abraham Abraham Male 40 S Airforce Rd Los Angeles CA 90034 18812 udo udo Male 21 E Disney Rd Los Angeles CA 90034 18924 Octavia Lee Female 10 Santa Monica Drive Los Angeles CA 90035 19036 Abel Adon Male 30 santa jose drv Los Angeles CA 90035 19148 Nancy William Male 40 S lake Rd Los Angeles CA 90034 19260 Monica Corby Female 19 Cider Lane Los Angeles CA 90033 19372 Chris Abraham Male 40 S Airforce Rd Los Angeles CA 90034 19484 Diane Austine Female 90 Sony Drive Los Angeles CA 90035 19596 Darlene Dion Female 92 Church Blvd Los Angeles CA 90035 19708 Linda Creed Female 12 Airport Highway Los Angeles CA 90035 19820 Carson Creed Male 12 Airport Highway Los Angeles CA 90035 19932 Perry Tyson Male 1150 S King Ave Apt 12B Atlanta GA 30301 20044 Aaliyah Clark Female 20 N Flowery Branch Road Los Angeles CA 30301 20156 Abbigail Udeh Female 980 Best Friend Road APT 7H Atlanta GA 30301 20268 Uehudah Urban Male 040 Sugar Grov Atlanta GA 30303 20380 Hamilton Hakeem Male 50 Tower Rd Atlanta GA 30303 20492 Adrianna Gary Female 66 Settingdown Road Apt 11Y Atlanta GA 30304 20604 Macie Gabriel Female 190 ClockTower Drv Atlanta GA 90034 20716 Jaiden Jacquez Male 40 Knights St Atlanta GA 30303 20828 Felipe Elton Male 50 Music Rd Atlanta GA 30304 ALTER dbo.customer Disable trigger customers delete dbo.customer output deleted.cust_no, deleted.first_name, deleted.last_name, deleted.gender, deleted.cust_address, deleted.city, deleted.cust_state, deleted.zip_code where cust_no = 15900 or cust_no = 10412; cust_no first_name last_name gender cust_address city cust_state zip_code ----------- --------------------------------- ------------------------- ---------- ------------------------------------------------------- ---------------------------------------- ------------------------- ----------- 10412 MARILYN FERNANDO Female 12 Jane Adams Blvd Chicago IL 60604 15900 Derick Rose Male 12 S Racine Ave Apt 29 H Chicago IL 606429 (2 row(s) affected) use AdventureWorks GO select C.ContactID, C.FirstName +' . ' + C.MiddleName + '.' + C.LastName AS EMPLOYEE_NAME, E.Title AS JOB_TITLE, CONVERT (DATE,E.HireDate) AS HIRE_DATE,
  • 25. ROUND(( P.RATE),2) AS PAY_RATE, ROUND((P.RATE * 40),2) AS WEEK_PAY1, ROUND((P.RATE * 40),2) AS WEEK_PAY2, ROUND((P.RATE * 40),2) AS WEEK_PAY3, ROUND((P.RATE * 40),2) AS WEEK_PAY4, E.VacationHours, E.SickLeaveHours, ROUND((P.Rate * 160),2) AS MONTH_PAY_TOTAL, D.DepartmentID AS DEPT_ID, HD.Name AS DEPT_NAME INTO SALARY_DEC1 from HumanResources.EmployeePayHistory P INNER JOIN HumanResources.Employee E ON P.EmployeeID = E.EmployeeID INNER JOIN Person.Contact C ON E.ContactID = E.ContactID INNER JOIN HumanResources.EmployeeDepartmentHistory D ON E.EmployeeID = D.DepartmentID INNER JOIN HumanResources.Department HD ON D.DepartmentID = HD.DepartmentID WHERE C.FirstName + '.'+ C.MiddleName +'.' +C.LastName IS NOT NULL (3717252 row(s) affected) USE AdventureWorks GO CREATE PROCEDURE DBO.SALARYDEC AS SELECT top(50)CONTACTID, EMPLOYEE_NAME, JOB_TITLE, HIRE_DATE, WEEK_PAY1, WEEK_PAY2, WEEK_PAY3, WEEK_PAY4, VacationHours, SickLeaveHours, MONTH_PAY_TOTAL,DEPT_NAME FROM dbo.SALARY_DEC1 go EXEC DBO.SALARYDEC CONTACTID EMPLOYEE_NAME JOB_TITLE HIRE_DATE WEEK_PAY1 WEEK_PAY2 WEEK_PAY3 WEEK_PAY4 VacationHours SickLeaveHours MONTH_PAY_TOTAL DEPT_NAME 6714 Isabelle . W.Long Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6716 Isabelle . C.Patterson Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6719 Carla . C.Chapman Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6720 Isabelle . A.Flores Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6721 Isabelle . C.Winston Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6726 Carla . C.Van Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6728 Carla . W.Malhotra Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6729 Isabelle . L.Alexander Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering
  • 26. 6730 Isabelle . S.Russell Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6733 Kelly . W.Price Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6735 Damien . M.Ye Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6736 Franklin . L.Zhang Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6738 Kelly . G.Wood Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6739 Carla . D.Madan Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6743 Kelly . L.Henderson Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6747 Kelly . E.Perry Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6748 Carla . K.Rana Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6749 Kelly . L.Powell Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6750 Kelly . G.Long Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6751 Carla . L.Raman Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6754 Carla . A.Sullivan Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6755 Kelly . R.Flores Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6756 Kelly . M.Washington Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6757 Carla . L.Mehta Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6759 Kelly . S.Simmons Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6761 Franklin . S.Wang Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6763 Carla . G.Lopez Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6766 Carla . J.Gonzalez Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6769 Carla . V.Rodriguez Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6770 Kelly . E.Russell Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering
  • 27. 6772 Kelly . F.Griffin Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6774 Virginia . J.Suri Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6776 Virginia . S.Kapoor Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6777 Kelly . M.Hayes Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6779 Virginia . M.Chandra Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6780 Marissa . J.Bennett Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6782 Franklin . A.Chen Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6783 Virginia . R.Patel Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6784 Melanie . P.Butler Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6785 Melanie . T.Simmons Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6786 Virginia . E.Vance Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6789 Melanie . C.Gonzales Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6790 Melanie . L.Bryant Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6792 Melanie . N.Alexander Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6793 Melanie . B.Russell Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6794 Melanie . A.Griffin Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6797 Melanie . G.Hayes Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6802 Alexandria . M.Wood Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6806 Alexandria . R.Henderson Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering 6807 Virginia . C.Sara Production Technician - WC60 7/31/1996 498 498 498 498 21 30 1992 Engineering EXEC sp_helptext 'dbo.SALARYDEC'
  • 28. Text --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- CREATE PROCEDURE DBO.SALARYDEC AS SELECT top(50)CONTACTID, EMPLOYEE_NAME, JOB_TITLE, HIRE_DATE, WEEK_PAY1, WEEK_PAY2, WEEK_PAY3, WEEK_PAY4, VacationHours, SickLeaveHours, MONTH_PAY_TOTAL,DEPT_NAME FROM dbo.SALARY_DEC1 update SALARY_DEC1 set pay_rate = 50 where dept_id in (1,13,10,11) update SALARY_DEC1 set pay_rate = 40 where dept_id in (7, 6, 5, 4, 8,9, 14, 15) update SALARY_DEC1 set pay_rate = 60 where dept_id = 16 update SALARY_DEC1 set pay_rate = 30 where dept_id not in (7,6,5,4,8,9,14,15,16,1,13,10,11) /* salary_dec1 was renamed to employee_salary*/ Alter table employee_salary add Hours_Worked int; Update employee_salary set hours_worked = 40; use AdventureWorks go CREATE TRIGGER salarydbemp ON dbo.Employee_Salary instead of update as print 'The data has been sucessfully updated to the database.'; use AdventureWorks go update dbo.Employee_Salary set VacationHours = 500 where contactid in(6714, 7095, 711) The data has been sucessfully updated to the database. (648 row(s) affected) /* Only contact 6714 records was copied from excel to make it easier to understand that the update operation did not work */ Select * from dbo.Employee_Salary ContactID EMPLOYEE_NAME JOB_TITLE HIRE_DATE PAY_RATE WEEK_PAY1 WEEK_PAY2 WEEK_PAY3 WEEK_PAY4 VacationHours SickLeaveHours MONTH_PAY_TOTAL DEPT_ID DEPT_NAME 6714 Isabelle . W.Long Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production 6714 Isabelle .W.Long Production 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production
  • 29. Supervisor - WC60 6714 Isabelle . W.Long Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production 6714 Isabelle . W.Long Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production 6714 Isabelle . W.Long Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production 6714 Isabelle . W.Long Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production 6714 Isabelle . W.Long Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production 6714 Isabelle . W.Long Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 82 61 4000 7 Production USE [AdventureWorks] GO /****** Object: Trigger [dbo].[salarydbemp] Script Date: 12/17/2011 07:42:01 ******/ SET ANSI_NULLS on GO SET QUOTED_IDENTIFIER on GO ALTER TRIGGER [dbo].[salarydbemp] ON [dbo].[Employee_Salary] instead of delete as print 'The data has been sucessfully deleted from the database.'; GO Command(s) completed successfully. update dbo.Employee_Salary set VacationHours = 500 where contactid in(6714, 7095) (648 row(s) affected) delete dbo.Employee_Salary where contactid = 7095 The data has been sucessfully deleted from the database. (324 row(s) affected) Select * from dbo.Employee_Salary where contactid in(6714, 7095) ContactID EMPLOYEE_NAME JOB_TITLE HIRE_DATE PAY_RATE WEEK_PAY1 WEEK_PAY2 WEEK_PAY3 WEEK_PAY4 VacationHours SickLeaveHours MONTH_PAY_TOTAL DEPT_ID DEPT_NAME Hours_Worked 6714 Isabelle . W.Long Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40 7095 Joan . D.Watson Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40
  • 30. 7095 Joan . D.Watson Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40 7095 Joan . D.Watson Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40 7095 Joan . D.Watson Production Supervisor - WC60 1/26/1998 40 1000 1000 1000 1000 500 61 4000 7 Production 40 use AdventureWorks go ALTER table dbo.Employee_Salary Disable trigger salarydbemp; Command(s) completed successfully. delete dbo.Employee_Salary output deleted.ContactID, deleted.EMPLOYEE_NAME, deleted.DEPT_ID, deleted.JOB_TITLE where contactid = 7095 ContactID EMPLOYEE_NAME DEPT_ID JOB_TITLE 7095 Joan . D.Watson 1 Production Technician - WC60 7095 Joan . D.Watson 1 Production Technician - WC60 7095 Joan . D.Watson 1 Production Technician - WC60 7095 Joan . D.Watson 1 Production Technician - WC60 7095 Joan . D.Watson 1 Production Technician - WC60 7095 Joan . D.Watson 1 Production Technician - WC60 7095 Joan . D.Watson 2 Marketing Assistant 7095 Joan . D.Watson 2 Marketing Assistant 7095 Joan . D.Watson 2 Marketing Assistant 7095 Joan . D.Watson 2 Marketing Assistant USE [AdventureWorks] GO /****** Object: Trigger [dbo].[salarydbemp] Script Date: 12/17/2011 12:17:23 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER TRIGGER [dbo].[salarydbemp] ON [dbo].[Employee_Salary] AFTER UPDATE, INSERT AS IF UPDATE(PAY_RATE) BEGIN; PRINT 'PAY_RATE HAS BEEN UPDATED' END; ELSE IF UPDATE(JOB_TITLE) BEGIN ; PRINT 'JOB TITLE HAS BEEN UPDATED' END; ELSE IF UPDATE(VacationHours) BEGIN; PRINT 'VACTION HOURS HAS BEEN UPDATED' END; ELSE IF UPDATE (SickLeaveHours) BEGIN; PRINT 'SICK HOURS UPDATED' end;
  • 31. else begin; print 'The record has been updated' end; GO use AdventureWorks update dbo.employee_salary set PAY_RATE = 55 where dept_name = 'Quality Assurance'; go update dbo.employee_salary set JOB_TITLE = 'Database Systems' where dept_id = 7; go update dbo.employee_salary set VacationHours = 340 where contactid between 2 and 2005; go update dbo.employee_salary set SickLeaveHours = 340 where dept_id = 15; go PAY_RATE HAS BEEN UPDATED (80304 row(s) affected) JOB TITLE HAS BEEN UPDATED (2064960 row(s) affected) VACTION HOURS HAS BEEN UPDATED (353160 row(s) affected) SICK HOURS UPDATED (68832 row(s) affected) /* Results are shortened */ SELECT CONTACTID, PAY_RATE FROM dbo.employee_salary WHERE DEPT_NAME = 'Quality Assurance'; CONTACTID PAY_RATE 3602 55 3603 55 3604 55 3605 55 3608 55 3609 55 3616 55 3617 55 3619 55 3620 55 3629 55 SELECT CONTACTID, JOB_TITLE FROM dbo.employee_salary WHERE DEPT_ID = 7; CONTACTID JOB_TITLE
  • 32. 721 Database Systems 718 Database Systems SELECT CONTACTID, SickLeaveHours FROM dbo.employee_salary WHERE DEPT_ID = 15; CONTACTID SickLeaveHours 18 340 19 340 20 340 21 340 22 340 24 340 25 340 26 340 SELECT CONTACTID, VACATIONHOURS FROM dbo.employee_salary WHERE contactid between 2 and 2005; use AdventureWorks GO CREATE PROCEDURE DBO.DEPT_EMPOLYEE1 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 1 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); Go Command(s) completed successfully. use AdventureWorks GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES2 CONTACTID VACATIONHOURS 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340 1836 340
  • 33. AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 2 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); Go Command(s) completed successfully. use AdventureWorks GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES3 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 3; Go CREATE PROCEDURE DBO.DEPT_EMPOLYEES4 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 4; GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES5 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 5; GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES6 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 6; Go CREATE PROCEDURE DBO.DEPT_EMPOLYEES7 AS
  • 34. SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 7 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES8 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 8 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES9 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 9 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES10 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 10; GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES11 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 11 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES12 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID
  • 35. WHERE DEPT_ID = 12 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES13 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 13 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES14 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 14 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES15 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 15 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO CREATE PROCEDURE DBO.DEPT_EMPOLYEES16 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 15 AND C.CONTACTID NOT IN (1025, 1022, 1023, 1024); GO Command(s) completed successfully. USE AdventureWorks GO EXEC dbo.DEPT_EMPOLYEES10; GO CONTACTID EMPLOYEE_NAME JOB_TITLE HIRE_DATE PHONE_NUMBER AREA_CODE EmployeeID SNN Gender
  • 36. 1005 Gail . A.Erickson Production Technician - WC10 2/7/1998 555-0139 849 9 695256908 F 1004 Sharon . B.Salavaria Production Technician - WC10 2/7/1998 555-0138 970 270 56920285 F 1005 Gail . A.Erickson Production Technician - WC10 2/7/1998 555-0139 849 9 695256908 F 1004 Sharon . B.Salavaria Production Technician - WC10 2/7/1998 555-0138 970 270 56920285 F 1008 Janice . M.Galvin Production Technician - WC10 2/7/1998 555-0117 473 265 486228782 F 1001 Terri . Lee.Duffy Production Technician - WC10 2/7/1998 555-0175 819 12 245797967 F 1005 Gail . A.Erickson Production Technician - WC10 2/7/1998 555-0139 849 9 695256908 F RESULTS (ABRIDGED) USE AdventureWorks GO EXEC SP_HELPTEXT 'dbo.DEPT_EMPOLYEES10'; GO Text --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- CREATE PROCEDURE DBO.DEPT_EMPOLYEES10 AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 10; USE [AdventureWorks] GO /****** Object: StoredProcedure [dbo].[DEPT_EMPOLYEES10] Script Date: 12/18/2011 21:13:38 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[DEPT_EMPOLYEES10] WITH ENCRYPTION AS SELECT C.CONTACTID, C.EMPLOYEE_NAME, C.JOB_TITLE, C.HIRE_DATE, SUBSTRING(P.Phone,5,11)AS PHONE_NUMBER, SUBSTRING(P.Phone,-7,11)AS AREA_CODE ,E.EmployeeID, E.NationalIDNumber AS SNN, E.Gender FROM dbo.Employee_Salary C INNER JOIN HumanResources.Employee E ON C.ContactID = E.ContactID INNER JOIN Person.Contact P ON E.ContactID =P.ContactID WHERE DEPT_ID = 10; GO The text for object 'dbo.DEPT_EMPOLYEES10' is encrypted. USE AdventureWorks GO USE AdventureWorks GO
  • 37. CREATE PROCEDURE EMPOLYEE_GENDERF @SEARCH nchar(1) = 'F' as SELECT E.EmployeeID, E.Gender, P.FirstName +' ' + P.LastName + ' *******'+ E.NationalIDNumber AS EMPLOYEE, CAST(E.HIREDATE AS CHAR(12))AS HIREDATE FROM HumanResources.Employee E INNER JOIN Person.Contact P ON P.ContactID = E.ContactID where e.Gender =@SEARCH GO EXEC EMPOLYEE_GENDERF EmployeeID Gender EMPLOYEE HIREDATE 7 F JoLynn Dobney *******309738752 Jan 26 1998 8 F Ruth Ellerbrock *******690627818 Feb 6 1998 9 F Gail Erickson *******695256908 Feb 6 1998 12 F Terri Duffy *******245797967 Mar 3 1998 16 F Jo Brown *******446466105 Mar 30 1998 17 F Doris Hartwig *******565090917 Apr 11 1998 19 F Diane Glimp *******9659517 Apr 29 1998 30 F Paula Barreto de Mattos *******535145551 Jan 7 1999 34 F Susan Eaton *******586486572 Jan 8 1999 36 F Alice Ciccu *******113695504 Jan 8 1999 40 F Yvonne McKay *******713403643 Jan 10 1999 42 F Jean Trenary *******441044382 Jan 12 1999 50 F Susan Metters *******351069889 Jan 15 1999 USE AdventureWorks GO CREATE PROCEDURE EMPDEPTRECORDS ( @DEPTNAME NVARCHAR(50) ) AS SELECT E.EmployeeID, D.Name AS DEPT_NAME, E.Gender, P.FirstName +' ' + P.LastName + ' ---'+ SUBSTRING (E.NationalIDNumber,5,3) AS EMPLOYEE, CAST(E.HIREDATE AS CHAR(12))AS HIREDATE , E.NationalIDNumber FROM HumanResources.Employee E INNER JOIN Person.Contact P ON P.ContactID = E.ContactID INNER JOIN HumanResources.EmployeeDepartmentHistory H ON E.EmployeeID = H.EmployeeID INNER JOIN HumanResources.Department D ON D.DepartmentID = H.DepartmentID WHERE D.Name =@DEPTNAME; GO Command(s) completed successfully. EmployeeID DEPT_NAME Gender EMPLOYEE HIREDATE NationalIDNumber
  • 38. 268 Sales M Stephen Jiang ---978 Feb 4 2001 502097814 273 Sales M Brian Welcker ---321 Mar 18 2001 112432117 275 Sales M Michael Blythe ---601 Jul 1 2001 841560125 276 Sales F Linda Mitchell ---447 Jul 1 2001 191644724 277 Sales F Jillian Carson ---898 Jul 1 2001 615389812 278 Sales M Garrett Vargas ---742 Jul 1 2001 234474252 279 Sales M Tsvi Reiter ---743 Jul 1 2001 716374314 280 Sales F Pamela Ansman-Wolfe ---166 Jul 1 2001 61161660 281 Sales M Shu Ito ---978 Jul 1 2001 139397894 282 Sales M José Saraiva ---714 Jul 1 2001 399771412 283 Sales M David Campbell ---542 Jul 1 2001 987554265 284 Sales F Amy Alberts ---104 May 18 2002 982310417 285 Sales F Jae Pak ---913 Jul 1 2002 668991357 286 Sales M Ranjit Varkey Chudukatil ---197 Jul 1 2002 134219713 287 Sales M Tete Mensa-Annan ---619 Nov 1 2002 90836195 288 Sales M Syed Abbas ---449 Apr 15 2003 481044938 289 Sales F Rachel Valdez ---762 Jul 1 2003 954276278 290 Sales F Lynn Tsoflias ---967 Jul 1 2003 758596752 EXEC EMPDEPTRECORDS 'PRODUCTION'; EmployeeID DEPT_NAME Gender EMPLOYEE HIREDATE NationalIDNumber 1 Production M Guy Gilbert ---780 Jul 31 1996 14417807 10 Production M Barry Johnson ---658 Feb 7 1998 912265825 13 Production M Sidney Higa ---736 Mar 5 1998 844973625 14 Production M Taylor Maxwell ---693 Mar 11 1998 233069302 15 Production M Jeffrey Ford ---748 Mar 23 1998 132674823 18 Production M John Campbell ---703 Apr 18 1998 494170342 20 Production M Steven Selikoff ---689 Jan 2 1999 443968955 22 Production M Stuart Munson ---601 Jan 3 1999 835460180 23 Production M Greg Alderson ---859 Jan 3 1999 687685941 24 Production M David Johnson ---388 Jan 3 1999 498138869 25 Production M Zheng Mu ---681 Jan 4 1999 360868122 26 Production M Ivo Salmre ---892 Jan 5 1999 964089218 27 Production M Paul Komosinski ---627 Jan 5 1999 384162788 29 Production M Kendall Keil ---587 Jan 6 1999 571658797 31 Production M Alejandro McGuel ---977 Jan 7 1999 761597760
  • 39. 32 Production M Garrett Young ---384 Jan 8 1999 271438431 33 Production M Jian Shuo Wang ---392 Jan 8 1999 160739235 use AdventureWorksDW CREATE FUNCTION EMPLOYEE_QUOTA() RETURNS TABLE AS RETURN( SELECT E.EmployeeKey AS EMP_ID, E.FirstName + ','+ E.LastName AS EMP_NAME, F.CalendarYear, F.CalendarQuarter, F.SalesAmountQuota, CAST(T.FullDateAlternateKey AS NVARCHAR(12) ) AS DATE_RELASED, T.FiscalQuarter, T.FiscalYear, SUM(F.SalesAmountQuota) OVER(PARTITION BY E.EmployeeKey) AS TOTAL_SALES_EMPLOYEE FROM dbo.FactSalesQuota F INNER JOIN dbo.DimTime T ON F.TimeKey = T.TimeKey INNER JOIN dbo.DimEmployee E ON E.EmployeeKey = F.EmployeeKey ); Select * from EMPLOYEE_QUOTA() Order by CalendarYear EMP_ID EMP_NAME CalendarYear CalendarQuarter SalesAmountQuota DATE_RELASED FiscalQuarter FiscalYear TOTAL_SALES_EMPLOYEE 272 Stephen,Jiang 2001 3 $ 28,000.00 Jul 1 2001 1 2002 $ 1,305,000.00 272 Stephen,Jiang 2001 4 $ 7,000.00 Oct 1 2001 2 2002 $ 1,305,000.00 281 Michael,Blythe 2001 3 $ 367,000.00 Jul 1 2001 1 2002 $11,162,000.00 281 Michael,Blythe 2001 4 $ 556,000.00 Oct 1 2001 2 2002 $11,162,000.00 282 Linda,Mitchell 2001 3 $ 637,000.00 Jul 1 2001 1 2002 $11,786,000.00 282 Linda,Mitchell 2001 4 $ 781,000.00 Oct 1 2001 2 2002 $11,786,000.00 283 Jillian,Carson 2001 3 $ 565,000.00 Jul 1 2001 1 2002 $12,198,000.00 283 Jillian,Carson 2001 4 $ 872,000.00 Oct 1 2001 2 2002 $12,198,000.00 284 Garrett,Vargas 2001 3 $ 244,000.00 Jul 1 2001 1 2002 $ 4,365,000.00 284 Garrett,Vargas 2001 4 $ 356,000.00 Oct 1 2001 2 2002 $ 4,365,000.00 285 Tsvi,Reiter 2001 3 $ 669,000.00 Jul 1 2001 1 2002 $ 8,541,000.00 285 Tsvi,Reiter 2001 4 $ 917,000.00 Oct 1 2001 2 2002 $ 8,541,000.00 286 Pamela,Ansman-Wolfe 2001 3 $ 165,000.00 Jul 1 2001 1 2002 $ 3,551,000.00 286 Pamela,Ansman-Wolfe 2001 4 $ 469,000.00 Oct 1 2001 2 2002 $ 3,551,000.00 287 Shu,Ito 2001 3 $ 460,000.00 Jul 1 2001 1 2002 $ 7,804,000.00 287 Shu,Ito 2001 4 $ 549,000.00 Oct 1 2001 2 2002 $ 7,804,000.00 289 David,Campbell 2001 3 $ 226,000.00 Jul 1 2001 1 2002 $ 4,025,000.00 289 David,Campbell 2001 4 $ 353,000.00 Oct 1 2001 2 2002 $ 4,025,000.00 288 José,Saraiva 2001 3 $ 525,000.00 Jul 1 2001 1 2002 $ 7,098,000.00 288 José,Saraiva 2001 4 $ 767,000.00 Oct 1 2001 2 2002 $ 7,098,000.00 288 José,Saraiva 2004 1 $ 569,000.00 Jan 1 2004 3 2004 $ 7,098,000.00 288 José,Saraiva 2004 2 $ 830,000.00 Apr 1 2004 4 2004 $ 7,098,000.00 289 David,Campbell 2004 1 $ 234,000.00 Jan 1 2004 3 2004 $ 4,025,000.00 289 David,Campbell 2004 2 $ 403,000.00 Apr 1 2004 4 2004 $ 4,025,000.00 290 Amy,Alberts 2004 1 $ 116,000.00 Jan 1 2004 3 2004 $ 876,000.00 290 Amy,Alberts 2004 2 $ 1,000.00 Apr 1 2004 4 2004 $ 876,000.00 291 Jae,Pak 2004 1 $ 883,000.00 Jan 1 2004 3 2004 $10,514,000.00 291 Jae,Pak 2004 2 $ 1,329,000.00 Apr 1 2004 4 2004 $10,514,000.00
  • 40. 292 Ranjit,Varkey Chudukatil 2004 1 $ 707,000.00 Jan 1 2004 3 2004 $ 5,557,000.00 292 Ranjit,Varkey Chudukatil 2004 2 $ 908,000.00 Apr 1 2004 4 2004 $ 5,557,000.00 293 Tete,Mensa-Annan 2004 1 $ 454,000.00 Jan 1 2004 3 2004 $ 2,753,000.00 293 Tete,Mensa-Annan 2004 2 $ 497,000.00 Apr 1 2004 4 2004 $ 2,753,000.00 RESULTS (ABRIDGED) SELECT CUST_NO,CONVERT(DATE, DOB)AS DATE_OF_BIRTH,DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) AS AGE, GENDER, F_NAME + ','+L_NAME AS CUSTOMER_NAME INTO CUSTOMER_5 FROM dbo.CUSTOMER_DIM009 (18484 row(s) affected) use MSSQL GO create function customerAge8l( @CUST_NO INT ) returns integer as begin declare @custAGE INT declare @custno int SELECT @custAGE= AGE FROM DB665. dbo.CUSTOMER_5 WHERE CUST_NO= @CUST_NO RETURN(@custAGE) END Command(s) completed successfully. select dbo.customerAge8l(29483) 52 (1 row(s) affected) use MSSQL GO create function customerAges( @CUST_NO INT ) returns integer as begin declare @custAGE INT SELECT @custAGE= DATEDIFF(YY, DOB, CURRENT_TIMESTAMP) FROM DB665.dbo.CUSTOMER_DIM009 WHERE CUST_NO= @CUST_NO RETURN(@custAGE) END Command(s) completed successfully.
  • 41. select dbo.customerAge8l(29483) ----------- 52 (1 row(s) affected) USE MSSQL GO SELECT E.EmployeeID, E.Gender, E.Title, P.FirstName, P.LastName, E.BirthDate, D.DepartmentID, D.Name, DATEDIFF(YY, E.BirthDate, CURRENT_TIMESTAMP) AS AGE, CONVERT(DATE, E.HireDate) AS HIRE_DATE , DATEDIFF(YY, E.HireDate, CURRENT_TIMESTAMP) AS NUM_YRS_EMPLOY INTO EMP_RECORDS FROM AdventureWorks.HumanResources.Employee E INNER JOIN AdventureWorks.Person.Contact P ON E.ContactID = P.ContactID INNER JOIN AdventureWorks.HumanResources.EmployeeDepartmentHistory H ON H.EmployeeID = E.EmployeeID INNER JOIN AdventureWorks.HumanResources.Department D ON D.DepartmentID = H.DepartmentID (296 row(s) affected) USE MSSQL GO create function AVG_AGE_DEPT( @DepartmentID SMALLINT ) returns integer as begin declare @AVGAGE INT SELECT @AVGAGE= AVG(AGE) FROM EMP_RECORDS RETURN(@AVGAGE) END SELECT dbo.AVG_AGE_DEPT(7) ----------- 42 (1 row(s) affected) SELECT dbo.AVG_AGE_DEPT(6) ----------- 42 (1 row(s) affected) /* SOMETHING WAS WRONG WITH THE FUNCTION SO I DECIEDED TO FIX IT */ ALTER function [dbo].[AVG_AGE_DEPT]( @DepartmentID SMALLINT ) returns integer as begin declare @AVGAGE INT
  • 42. SELECT @AVGAGE= AVG(AGE) FROM EMP_RECORDS WHERE DepartmentID =@DepartmentID RETURN(@AVGAGE) END USE MSSQL SELECT dbo.AVG_AGE_DEPT(7) ----------- 41 (1 row(s) affected) SELECT dbo.AVG_AGE_DEPT(6) ----------- 36 (1 row(s) affected) USE MSSQL GO create function student_grad( @STUDENT_ID decimal, @SECTION_ID decimal ) returns integer as begin declare @Final_grade INT SELECT @Final_grade= ROUND(sum(numeric_grade)/1000,2)* 100 from dbo.grade where student_id = @STUDENT_ID AND SECTION_ID = @SECTION_ID RETURN(@Final_grade) END Command(s) completed successfully. SELECT dbo.student_grad(202,105) 81 (1 row(s) affected) SELECT dbo.student_grad(200,106) ----------- 93 (1 row(s) affected) USE MSSQL GO CREATE FUNCTION [dbo].[PROFRECORD](@INSTRUCTOR_ID DECIMAL) RETURNS TABLE AS RETURN( SELECT I.SALUTATION, I.FIRST_NAME +','+ I.LAST_NAME AS PROFESSOR_NAME,
  • 43. S.SECTION_NO, S.COURSE_NO, S.LOCATION, S.CAPACITY, C.DESCRIPTION, S.SECTION_ID FROM DBO.INSTRUCTOR I INNER JOIN dbo.section S ON I.INSTRUCTOR_ID = S.INSTRUCTOR_ID INNER JOIN dbo.course C ON S.COURSE_NO = C. COURSE_NO INNER JOIN dbo.enrollment E ON S.SECTION_ID = E.SECTION_ID WHERE I.INSTRUCTOR_ID = @INSTRUCTOR_ID ) GO SELECT I.SALUTATION, I.FIRST_NAME +','+ I.LAST_NAME AS PROFESSOR_NAME, S.SECTION_NO, S.COURSE_NO, S.LOCATION, S.CAPACITY, C.DESCRIPTION, S.SECTION_ID FROM DBO.INSTRUCTOR I INNER JOIN dbo.section S ON I.INSTRUCTOR_ID = S.INSTRUCTOR_ID INNER JOIN dbo.course C ON S.COURSE_NO = C. COURSE_NO INNER JOIN dbo.enrollment E ON S.SECTION_ID = E.SECTION_ID CROSS APPLY dbo.PROFRECORD(I.INSTRUCTOR_ID) ORDER BY C.DESCRIPTION SALUTATION PROFESSOR_NAME SECTION_NO COURSE_NO LOCATION CAPACITY DESCRIPTION SECTION_ID Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC Language 101 Mr Fernand,Hanks 1 240 L509 10 Intro to the BASIC 101
  • 44. Language RESULTS (ABRIDGED) CREATE VIEW DEPTSUMMARY AS SELECT DISTINCT(DepartmentID),NAME, AVG(AGE) OVER(PARTITION BY DepartmentID) AS Avg_Age, MIN(AGE) OVER(PARTITION BY DepartmentID) AS Smallest_Age, MAX(AGE)OVER(PARTITION BY DepartmentID) AS Oldest_Age FROM EMP_RECORDS SELECT * FROM dbo.DEPTSUMMARY; DepartmentID NAME Avg_Age Smallest_Age Oldest_Age 1 Engineering 53 42 69 2 Tool Design 45 32 62 3 Sales 50 41 70 4 Marketing 42 34 59 5 Purchasing 48 37 69 6 Research and Development 36 34 42 7 Production 41 30 69 8 Production Control 39 33 53 9 Human Resources 41 37 45 10 Finance 43 37 57 11 Information Services 41 33 46 12 Document Control 37 31 45 13 Quality Assurance 42 32 54 14 Facilities and Maintenance 51 45 67 15 Shipping and Receiving 42 36 49 16 Executive 48 45 52 CREATE FUNCTION DEPT_SUMMARRY() RETURNS @SUMMARY TABLE (DEPT_ID INTEGER, DEPT_NAME NVARCHAR(50), AVG_AGE INT, SMALLEST_AGE INT, OLDEST_AGE INT ) AS BEGIN INSERT @SUMMARY(DEPT_ID, Avg_Age, Smallest_Age, Oldest_Age, DEPT_NAME) SELECT DepartmentID, Avg_Age, Smallest_Age, Oldest_Age, NAME FROM dbo.DEPTSUMMARY ORDER BY NAME RETURN; END; SELECT * FROM DEPT_SUMMARRY()
  • 45. DEPT_ID DEPT_NAME AVG_AGE SMALLEST_AGE OLDEST_AGE 12 Document Control 37 31 45 1 Engineering 53 42 69 16 Executive 48 45 52 14 Facilities and Maintenance 51 45 67 10 Finance 43 37 57 9 Human Resources 41 37 45 11 Information Services 41 33 46 4 Marketing 42 34 59 7 Production 41 30 69 8 Production Control 39 33 53 5 Purchasing 48 37 69 13 Quality Assurance 42 32 54 6 Research and Development 36 34 42 3 Sales 50 41 70 15 Shipping and Receiving 42 36 49 2 Tool Design 45 32 62 USE MSSQL GO CREATE FUNCTION productDetails() RETURNS @Details TABLE (ProductID int, Name nvarchar(50), color nvarchar(15), StandardCost money, ListPrice money, Size nvarchar(5), weight decimal, WeightUnitMeasureCode nchar(3), SizeUnitMeasureCode nchar(3), PROD_SUB_CATEGORY_NAME nvarchar(50), PROD_CATEGORY_NAME nvarchar(50), MODEL_NAME NVARCHAR(50) ) AS BEGIN INSERT @Details(ProductID,Name,StandardCost,ListPrice,Size,Weight, WeightUnitMeasureCode, SizeUnitMeasureCode, PROD_SUB_CATEGORY_NAME,PROD_CATEGORY_NAME,MODEL_NAME) SELECT p.ProductID, P.name,ROUND( p.StandardCost,2)StandardCost, p.ListPrice,p.Size,p.Weight, p.WeightUnitMeasureCode,p.SizeUnitMeasureCode ,C.Name AS PROD_SUB_CATEGORY_NAME , G.NAME AS PROD_CATEGORY_NAME, M.Name AS MODEL_NAME from AdventureWorks.Production.Product p inner join AdventureWorks.Production.ProductSubcategory C ON p.ProductSubcategoryID = C.ProductSubcategoryID INNER JOIN AdventureWorks.Production.ProductCategory G ON C.ProductCategoryID = G.ProductCategoryID INNER JOIN AdventureWorks.Production.ProductModel M ON P.ProductModelID = M.ProductModelID ORDER BY P.NAME
  • 46. RETURN; END; SELECT * FROM dbo.productDetails() ProductID Name color Standard Cost ListPrice Size weight WeightUnit MeasureCode SizeUnit MeasureCode PROD_SUB_CATEGORY_NAME PROD_CATEGORY_NAME MODEL_NAME 879 All-Purpose Bike Stand 59.47 159 Bike Stands Accessories All-Purpose Bike Stand 712 AWC Logo Cap 6.92 8.99 Caps Clothing Cycling Cap 877 Bike Wash - Dissolver 2.97 7.95 Cleaners Accessories Bike Wash 843 Cable Lock 10.31 25 Locks Accessories Cable Lock 952 Chain 8.99 20.24 Chains Components Chain 866 Classic Vest, L 23.75 63.5 L Vests Clothing Classic Vest 865 Classic Vest, M 23.75 63.5 M Vests Clothing Classic Vest 864 Classic Vest, S 23.75 63.5 S Vests Clothing Classic Vest 878 Fender Set - Mountain 8.22 21.98 Fenders Accessories Fender Set - Mountain 863 Full-Finger Gloves, L 15.67 37.99 L Gloves Clothing Full-Finger Gloves 862 Full-Finger Gloves, M 15.67 37.99 M Gloves Clothing Full-Finger Gloves RESULTS (ABRIDGED) /* DEFAULT DATABASE MASTER. ADVENTUREWORKS DATABASE WAS EXPORTED FROM MICROSOFT SQL SERVER 2008 INTO MICROSOFT SQL SERVER 2008R2 */ select E.EmployeeID, P.FirstName + ',' + P.LastName AS Employee_Name, E.BirthDate, CONVERT(nvarchar(12), E.BirthDate, 101) as Birthdate_American, CONVERT(nvarchar(12), E.BirthDate, 103) as Birthdate_European, CONVERT(nvarchar(12), E.BirthDate, 100) as Birthdate_default from HumanResources.Employee E INNER JOIN Person.Contact P ON E.ContactID = P.ContactID order by e.EmployeeI
  • 47. RESULTS (ABRIDGED) select E.EmployeeID, P.FirstName + ',' + P.LastName AS Employee_Name, E.BirthDate, DATENAME(MONTH,E.BIRTHDATE)+ '-'+ DATENAME(DAY,E.BIRTHDATE) + '-' + DATENAME(YEAR,E.BIRTHDATE) AS BIRTH_DATE from HumanResources.Employee E INNER JOIN Person.Contact P ON E.ContactID = P.ContactID order by e.EmployeeID EmployeeID Employee_Name BirthDate BIRTH_DATE 1 Guy,Gilbert 1972-05-15 00:00:00.000 May-15-1972 EmployeeID Employee_Name BirthDate Birthdate_American Birthdate_European Birthdate_default 1 Guy,Gilbert 5/15/1972 5/15/1972 15/05/1972 May 15 1972 2 Kevin,Brown 6/3/1977 6/3/1977 3/6/1977 Jun 3 1977 3 Roberto,Tamburello 12/13/1964 12/13/1964 13/12/1964 Dec 13 1964 4 Rob,Walters 1/23/1965 1/23/1965 23/01/1965 Jan 23 1965 5 Thierry,D'Hers 8/29/1949 8/29/1949 29/08/1949 Aug 29 1949 6 David,Bradley 4/19/1965 4/19/1965 19/04/1965 Apr 19 1965 7 JoLynn,Dobney 2/16/1946 2/16/1946 16/02/1946 Feb 16 1946 8 Ruth,Ellerbrock 7/6/1946 7/6/1946 6/7/1946 Jul 6 1946 9 Gail,Erickson 10/29/1942 10/29/1942 29/10/1942 Oct 29 1942 10 Barry,Johnson 4/27/1946 4/27/1946 27/04/1946 Apr 27 1946 11 Jossef,Goldberg 4/11/1949 4/11/1949 11/4/1949 Apr 11 1949 12 Terri,Duffy 9/1/1961 9/1/1961 1/9/1961 Sep 1 1961 13 Sidney,Higa 10/1/1946 10/1/1946 1/10/1946 Oct 1 1946 14 Taylor,Maxwell 5/3/1946 5/3/1946 3/5/1946 May 3 1946 15 Jeffrey,Ford 8/12/1946 8/12/1946 12/8/1946 Aug 12 1946 16 Jo,Brown 11/9/1946 11/9/1946 9/11/1946 Nov 9 1946 17 Doris,Hartwig 5/6/1946 5/6/1946 6/5/1946 May 6 1946 18 John,Campbell 9/8/1946 9/8/1946 8/9/1946 Sep 8 1946 19 Diane,Glimp 4/30/1946 4/30/1946 30/04/1946 Apr 30 1946
  • 48. 2 Kevin,Brown 1977-06-03 00:00:00.000 June-3-1977 3 Roberto,Tamburello 1964-12-13 00:00:00.000 December-13-1964 4 Rob,Walters 1965-01-23 00:00:00.000 January-23-1965 RESULTS (ABRIDGED) SELECT PT.ProductID,PT.Name, PT.ProductNumber,PT.Color, PT.SIZE, PT.SizeUnitMeasureCode, '$' + CONVERT(VARCHAR(30), CONVERT(MONEY, PT.ListPrice)) AS LISTPRICE, '$' + CONVERT(VARCHAR(40), CONVERT(MONEY, PT.StandardCost))AS STAMDARDCOST, '$' + CONVERT(VARCHAR(40), CONVERT(MONEY, P.LineTotal))AS LINETOTAL, '$' + CONVERT(VARCHAR(40), CONVERT(MONEY, P.UnitPrice))AS UNITPRICE, P.OrderQty, P.StockedQty, H.PurchaseOrderID, CONVERT( DATE, H.ORDERDATE ) AS ORDER_DATE, '$' + CONVERT(VARCHAR(40), CONVERT(MONEY, H.SubTotal))AS SUBTOTAL, '$' + CONVERT(VARCHAR(40), CONVERT(MONEY, H.TaxAmt))AS TAXAMOUNT, '$' + CONVERT(VARCHAR(40), CONVERT(MONEY, H.Freight))AS FREIGHT, '$' + CONVERT(VARCHAR(40), CONVERT(MONEY, H.TotalDue))AS TOTAL, H.EmployeeID, H.VendorID FROM Purchasing.PurchaseOrderDetail P INNER JOIN Production.Product PT ON P.ProductID = PT.ProductID INNER JOIN Purchasing.PurchaseOrderHeader H ON P.PurchaseOrderID = H.PurchaseOrderID RESULTS (ABRIDGED) SELECT c.CustomerID, right(c.AccountNumber,5) as Account_Number, p.FirstName + ','+ p.LastName as Customer_Name, h.CreditCardID, right(s.CardNumber,5) + '******' as credit_Number, s.ExpMonth , s.ExpYear FROM Sales.Customer c ProductID Name Product Number Color SIZE SizeUnit Measure Code LISTPRICE STAMDARD COST LINE TOTAL UNIT PRICE Order Qty Stocke dQty Purchase OrderID ORDER DATE SUB TOTAL TAX AMOUNT FREIGHT TOTAL Employee ID VendorID 403 External Lock Washer 3 LE- 1000 $0.00 $0.00 $136.11 $45.37 3 3 33 2/16/2002 $421.16 $33.69 $10.53 $465.38 241 87 404 External Lock Washer 4 LE- 1200 $0.00 $0.00 $148.93 $49.64 3 3 33 2/16/2002 $421.16 $33.69 $10.53 $465.38 241 87 405 External Lock Washer 9 LE- 1201 $0.00 $0.00 $136.11 $45.37 3 3 33 2/16/2002 $421.16 $33.69 $10.53 $465.38 241 87 463 Lock Washer 4 LW- 1000 $0.00 $0.00 $142.57 $47.52 3 3 43 2/16/2002 $427.93 $34.23 $10.70 $472.86 241 37 464 Lock Washer 5 LW- 1200 $0.00 $0.00 $136.27 $45.42 3 3 43 2/16/2002 $427.93 $34.23 $10.70 $472.86 241 37 465 Lock Washer 10 LW- 1201 $0.00 $0.00 $149.09 $49.70 3 3 43 2/16/2002 $427.93 $34.23 $10.70 $472.86 241 37 422 Thin-Jam Lock Nut 9 LJ-1213 $0.00 $0.00 $143.04 $47.68 3 3 63 2/24/2002 $429.35 $34.35 $10.73 $474.43 241 25 423 Thin-Jam Lock Nut 10 LJ-1220 $0.00 $0.00 $136.74 $45.58 3 3 63 2/24/2002 $429.35 $34.35 $10.73 $474.43 241 25 424 Thin-Jam Lock Nut 1 LJ-1420 $0.00 $0.00 $149.56 $49.85 3 3 63 2/24/2002 $429.35 $34.35 $10.73 $474.43 241 25 4 Headset Ball Bearings BE- 2908 $0.00 $0.00 $171.08 $57.03 3 3 83 3/12/2002 $171.08 $13.69 $4.28 $189.04 241 85
  • 49. inner join Sales.SalesOrderHeader h on c.CustomerID = h.CustomerID inner join Sales.CreditCard s on h.CreditCardID = s.CreditCardID inner join Sales.Individual i on c.CustomerID = i.CustomerID inner join Person.Contact p on i.ContactID =p.ContactID CustomerID Account_Number Customer_Name CreditCardID Credit_Number ExpMonth ExpYear 11176 11176 Mason,Roberts 11843 85388****** 4 2007 11142 11142 Eduardo,Patterson 3510 02051****** 4 2007 16597 16597 Kelli,Xu 10296 62475****** 4 2007 11176 11176 Mason,Roberts 11843 85388****** 4 2007 19873 19873 Dylan,Thomas 7280 35362****** 4 2007 11176 11176 Mason,Roberts 11843 85388****** 4 2007 25299 25299 Hector,Romero 6605 07877****** 4 2007 23364 23364 Natalie,Young 3521 57777****** 4 2007 14554 14554 Isaac,Mitchell 10579 43251****** 4 2007 13249 13249 Ryan,Perry 12654 21331****** 4 2007 20162 20162 Kelsey,Nath 5226 88245****** 4 2007 24452 24452 Megan,Coleman 4633 22326****** 4 2007 11176 11176 Mason,Roberts 11843 85388****** 4 2007 17717 17717 Jeremiah,Miller 9537 95878****** 4 2007 29292 29292 Diana,Dominguez 12559 17791****** 4 2007 14953 14953 Adrienne,Gill 5845 32486****** 4 2007 11766 11766 Candace,Raman 12270 54265****** 4 2007 14067 14067 Larry,Sanz 18734 60169****** 4 2007 15886 15886 Matthew,Brown 8756 97719****** 4 2007 RESULTS (ABRIDGED) USE MASTER EXEC (' select * from Purchasing.PurchaseOrderHeader WHERE VendorID = 29;'); PurchaseOrderID RevisionNumber Status EmployeeID VendorID ShipMethodID OrderDate ShipDate SubTotal TaxAmt Freight TotalDue ModifiedDate 4003 3 2 198 29 3 2004-06-14 00:00:00.000 2004-07-09 00:00:00.000 27453.60 2196.288 549.072 30198.96 2005-09-12 12:25:46.360 4004 4 2 198 29 3 2003-12-05 00:00:00.000 2003-12-30 00:00:00.000 46383.00 3710.64 927.66 51021.30 2005-09-12 12:25:46.360 4005 2 2 198 29 3 2004-02-28 00:00:00.000 2004-03-24 00:00:00.000 7425.00 594.00 148.50 8167.50 2005-09-12 12:25:46.373 4012 5 2 231 29 3 2004-07-25 00:00:00.000 2004-08-19 00:00:00.000 997680.00 79814.40 19953.60 1097448.00 2005-09-12 12:25:46.483 EXECsp_executesql N' select * from Purchasing.PurchaseOrderHeader WHERE VendorID = @VENDORID;', N'@VENDORID INT', @VENDORID = 83; PurchaseOrderID RevisionNumber Status EmployeeID VendorID ShipMethodID OrderDate ShipDate SubTotal TaxAmt Freight TotalDue ModifiedDate 1 0 4 244 83 3 2001-05-17 00:00:00.000 2001-05-26 00:00:00.000 201.04 16.0832 5.026 222.1492 2001-05-26 00:00:00.000 80 0 4 264 83 5 2002-03-12 00:00:00.000 2002-03-21 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2002-03-21 00:00:00.000 159 0 4 261 83 5 2002-07-01 00:00:00.000 2002-07-10 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2002-07-10 00:00:00.000 238 0 4 238 83 5 2002-10-07 00:00:00.000 2002-10-16 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2002-10-16 00:00:00.000 317 0 4 233 83 5 2003-05-26 00:00:00.000 2003-06-04 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-06-04 00:00:00.000 396 0 4 223 83 5 2003-07-13 00:00:00.000 2003-07-22 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-07-22 00:00:00.000 426 0 4 238 83 5 2003-09-05 00:00:00.000 2003-09-14 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-09-14 00:00:00.000 505 0 4 198 83 5 2003-09-12 00:00:00.000 2003-09-21 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-09-21 00:00:00.000 588 0 4 223 83 5 2003-09-16 00:00:00.000 2003-09-25 00:00:00.000 150.7905 12.0632 3.7698 166.6235 2003-09-25 00:00:00.000
  • 50. EXECsp_executesql N' select * from Purchasing.PurchaseOrderHeader WHERE VendorID = @VENDORID;', N'@VENDORID INT', @VENDORID = 92 PurchaseOrderID RevisionNumber Status EmployeeID VendorID ShipMethodID OrderDate ShipDate SubTotal TaxAmt Freight TotalDue ModifiedDate 5 0 4 164 92 4 2001-05-31 00:00:00.000 2001-06-09 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2001-06-09 00:00:00.000 84 0 3 266 92 4 2002-03-12 00:00:00.000 2002-03-21 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2002-03-21 00:00:00.000 163 0 4 241 92 4 2002-07-01 00:00:00.000 2002-07-10 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2002-07-10 00:00:00.000 242 0 4 231 92 4 2002-10-23 00:00:00.000 2002-11-01 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2002-11-01 00:00:00.000 321 0 4 274 92 4 2003-05-27 00:00:00.000 2003-06-05 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-06-05 00:00:00.000 400 0 4 264 92 4 2003-07-27 00:00:00.000 2003-08-05 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-08-05 00:00:00.000 430 0 4 231 92 4 2003-09-05 00:00:00.000 2003-09-14 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-09-14 00:00:00.000 509 0 4 244 92 4 2003-09-12 00:00:00.000 2003-09-21 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-09-21 00:00:00.000 592 0 4 264 92 4 2003-09-18 00:00:00.000 2003-09-27 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-09-27 00:00:00.000 679 0 4 198 92 4 2003-09-26 00:00:00.000 2003-10-05 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-10-05 00:00:00.000 762 0 4 238 92 4 2003-10-03 00:00:00.000 2003-10-12 00:00:00.000 20397.30 1631.784 509.9325 22539.0165 2003-10-12 00:00:00.000 USE AdventureWorksLT2008R2 go CREATE PROC customerdetails5 (@customerid int, @Name nvarchar(140) output ) as select @Name = FirstName + ',' + + MiddleName + ','+ LastName from SalesLT.Customer where CustomerID = @customerid and FirstName + ',' + + MiddleName + ','+ LastName is not null ; return; customerid Customer_Name 1 Orlando,N.,Gee 2 NULL 3 Donna,F.,Carreras 4 Janet,M.,Gates 5 NULL 6 Rosmarie,J.,Carroll 7 Dominic,P.,Gash 10 Kathleen,M.,Garza 11 NULL 12 Johnny,A.,Caprio 16 Christopher,R.,Beck 18 David,J.,Liu 19 John,A.,Beaver use AdventureWorksLT2008R2; declare @name nvarchar(140); exec dbo.customerdetails5 '7', @name output print @ name; Dominic,P.,Gash declare @name nvarchar(140); exec dbo.customerdetails5 '6', @name output print @name; Rosmarie,J.,Carroll declare @name nvarchar(140); exec dbo.customerdetails5 '2', @name output print @name;
  • 51. declare @name nvarchar(140); exec dbo.customerdetails5 '11', @name output print @name; /* inserting data using stored procedure */ USE master create table GRADSTUDENT (student_id int identity(0240, 120) constraint stud_studentid_pk primary key, first_name nvarchar(30), last_name nvarchar(30) ) Go USE master GO create PROC STUDENTINSERT AS SET NOCOUNT ON; SELECT FIRST_NAME, LAST_NAME FROM MSSQL.dbo.student; SELECT FIRSTNAME, LASTNAME FROM AdventureWorksLT2008R2.SalesLT.Customer; RETURN ; INSERT INTO dbo.GRADSTUDENT (First_Name, last_name) Exec STUDENTINSERT; (1115 row(s) affected) select * from dbo.GRADSTUDENT
  • 52. Student Record student id first name last name 240 Fred Crocitto 360 J. Landry 480 Laetia Enison 600 Angel Moskowitz 720 Judith Olvsade 840 Catherine Mierzwa 960 Judy Sethi 1080 Larry Walter 1200 Maria Martin 1320 Peggy Noviello 1440 Thomas Thomas 1560 Anil Kulina 1680 Winsome Laporte 1800 N Kuehn 1920 Hiedi Lopez 2040 Mardig Abdou 2160 Ralph Alexander 2280 Sean Pineda 2400 Julita Lippen 2520 Pierre Radicola 2640 Daniel Wicelinski 2760 Gary Aung 2880 Jeff Runyan 3000 Omaira Grant 3120 Lula Oates 3240 James Reed 3360 Angela Torres 3480 Michelle Masser 3600 Hazel Lasseter 3720 James Miller 3840 John Smith 3960 Angelo Garshman 4080 Derrick Baltazar 4200 Robert Boyd 4320 Monica Waldman 4440 Gerard Biers 4560 David Essner 4680 Paul Lefkowitz RESULTS (ABRIDGED) /* Using cursor to mainpluate data */ use AdventureWorksdw go create view adventcust as select c.CustomerKey, c.FirstName, c.MiddleName, c.LastName, c.Gender, c.BirthDate, g.City, g.StateProvinceCode as state_code, g.EnglishCountryRegionName as country_code from DimCustomer c inner join dbo.DimGeography g on c.GeographyKey = g.GeographyKey; use AdventureWorksdw