1. Trang chủ
  2. » Công Nghệ Thông Tin

Code Hệ Quản Trị Cơ Sở Dữ Liệu

4 487 1

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 14,03 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Create Table KH_BAC (Makh int, TenKh Nchar(30), Khuvuc Nvarchar(30) NOT NULL CHECK ( Khuvuc=Bac bo), PRIMARY KEY (Makh, Khuvuc) )Create Table KH_TRUNG (Makh int, TenKh Nchar(30), Khuvuc Nvarchar(30) NOT NULL CHECK ( Khuvuc=Trung bo), PRIMARY KEY (Makh, Khuvuc) )Create Table KH_NAM(Makh int, TenKh Nchar(30),Khuvuc Nvarchar(30) NOT NULL CHECK ( Khuvuc=Nam bo),PRIMARY KEY (Makh, Khuvuc)) create view danhsachasselect from dbo.KH_BACunion allselect from dbo.KH_TRUNGunion allselect from dbo.KH_NAMinsert into danhsachvalues (123,Nguyen Van A,Bac bo)insert into danhsachvalues (134,Sky,Bac bo)insert into danhsachvalues (345,Tran B,Bac bo)insert into danhsachvalues (111,Nguyen A,Trung bo)insert into danhsachvalues (245,Dao Anh,Trung bo)insert into danhsachvalues (342,Vo Van Kiet,Trung bo)insert into danhsachvalues (435,Nguyen Dao E,Nam bo)insert into danhsachvalues (349,Tran Hai,Nam bo)insert into danhsachvalues (342,Nguyen Duc,Nam bo) select from dbo.danhsach

Trang 1

bai 11 module 4

Create Table KH_BAC

(Makh int, TenKh Nchar(30),

Khuvuc Nvarchar(30) NOT NULL CHECK ( Khuvuc='Bac bo'), PRIMARY KEY (Makh, Khuvuc)

)

Create Table KH_TRUNG

(Makh int, TenKh Nchar(30),

Khuvuc Nvarchar(30) NOT NULL CHECK ( Khuvuc='Trung bo'), PRIMARY KEY (Makh, Khuvuc)

)

Create Table KH_NAM

(Makh int, TenKh Nchar(30),

Khuvuc Nvarchar(30) NOT NULL CHECK ( Khuvuc='Nam bo'), PRIMARY KEY (Makh, Khuvuc)

)

create view danhsach

as

select *from dbo.KH_BAC

union all

select *from dbo.KH_TRUNG

union all

select *from dbo.KH_NAM

insert into danhsach

values (123,'Nguyen Van A','Bac bo')

insert into danhsach

values (134,'Sky','Bac bo')

insert into danhsach

values (345,'Tran B','Bac bo')

insert into danhsach

values (111,'Nguyen A','Trung bo')

insert into danhsach

values (245,'Dao Anh','Trung bo')

insert into danhsach

values (342,'Vo Van Kiet','Trung bo')

insert into danhsach

values (435,'Nguyen Dao E','Nam bo')

insert into danhsach

values (349,'Tran Hai','Nam bo')

insert into danhsach

values (342,'Nguyen Duc','Nam bo')

select *

from dbo.danhsach

I batch

bai1

declare @tongsoHD int

select @tongsoHD=

count([SalesOrderID])

from [Sales].[SalesOrderDetail]

where [ProductID] =778

Trang 2

if @tongsoHD>500

print 'San Pham' +'778'+'co'+convert(char(5), @tongsoHD)+'tren 500 don hang'

else print 'san pham '+ convert(char(5), @tongsoHD)+'co it don dat hang' go

bai2

declare @makh int,@n int,@nam int

set @makh=11527

set @nam=2008

select @n=count([SalesOrderID])

from [Sales].[SalesOrderHeader]

where [CustomerID]=@makh

and year([OrderDate])=@nam

if(@n<>0)

print 'khach hang '+convert(char(10),@makh)+'co '+convert(char(5),@n) +'hoa don trong nam 2008'

else

print'Khach hang khong co hoa don nao vao nam 2008'

go

bai3

use AdventureWorks2008;

go

select [SalesOrderID],sum([LineTotal]) as subtotal,

discount = case

when sum([LineTotal])<10000 then 0

when sum([LineTotal])<12000 then 0.05*sum([LineTotal])

when sum([LineTotal])<15000 then 0.1*sum([LineTotal])

else

0.15*sum([LineTotal])

end

from [Sales].[SalesOrderDetail]

group by [SalesOrderID]

go

bai4

declare @mancc int,@masp int,@soluongcc int

set @mancc=1650

set @masp=4

select @soluongcc=COUNT(OnOrderQty)

from Purchasing.ProductVendor

if(@soluongcc is null)

print 'Nha cung cap 1650 khong cung cap san pham 4'

else

print'Nha cung cap 1650 cung cap san pham 4 voi so luong

'+convert(char(5),@soluongcc)

go

bai5

while(select SUM(rate) from

HumanResources.EmployeePayHistory)<6000

begin

update HumanResources.EmployeePayHistory

set Rate=Rate*1.1

if(select MAX(rate)from

HumanResources.EmployeePayHistory)>150

break

Trang 3

continue

end

II function

bai1

create function countofEmployees

(@mapb int)

returns int

as

begin

return

(select COUNT(DepartmentID)

from HumanResources.EmployeeDepartmentHistory

where DepartmentID=@mapb)

end

declare @mapb int

set @mapb=12

select DepartmentID,Name, countOfEmp=dbo.countofEmployees(DepartmentID) from HumanResources.Department

bai2

create function InventoryProd

(@ProductID int,@locationID smallint)

returns int

as

begin

return

(select COUNT(Quantity)

from Production.ProductInventory

where ProductID=@ProductID and LocationID=@locationID)

end

bai 3

create function UbTotalOfEmp

(@EmplID int,@MonthOrder datetime, @YearOrder datetime)

returns int

as

begin

return

(select COUNT(SubTotal)

from Sales.SalesOrderHeader

where SalesOrderID=@EmplID and YEAR(OrderDate)=@YearOrder and

MONTH(OrderDate)=@MonthOrder)

end

III Table Valued Functions

Bai1

create function sumofOrder(@thang datetime,@nam datetime)

returns table

as

return

(select [SalesOrderID],[OrderDate],[SubTotal]

from [Sales].[SalesOrderHeader]

where month([OrderDate])=@thang and year(Orderdate)=@nam

group by [SalesOrderID],[OrderDate],[SubTotal]

having [SubTotal]>70000

Trang 4

Bai2

create function NewBonus()

returns table

as

return

(SELECT Sales.SalesOrderHeader.SalesPersonID,

(Sales.SalesPerson.Bonus+SUM(Sales.SalesOrderHeader.SubTotal)*0.01 )as Newbonus, SUM(Sales.SalesOrderHeader.SubTotal) as SumofSubTotal

FROM Sales.SalesOrderHeader INNER JOIN Sales.SalesPerson

ON Sales.SalesOrderHeader.SalesPersonID =

Sales.SalesPerson.BusinessEntityID

group by Sales.SalesOrderHeader.SalesPersonID,Sales.SalesPerson.Bonus )

Bai3

create function SumofProduct(@MaNCC int)

returns table

as

return

(SELECT Purchasing.ProductVendor.ProductID,

SUM(Purchasing.PurchaseOrderDetail.OrderQty)as SumofProduct,

SUM(Purchasing.PurchaseOrderHeader.SubTotal)as SumOfSubtotal

FROM Purchasing.PurchaseOrderDetail INNER JOIN

Purchasing.PurchaseOrderHeader

ON Purchasing.PurchaseOrderDetail.PurchaseOrderID =

Purchasing.PurchaseOrderHeader.PurchaseOrderID INNER JOIN

Purchasing.ProductVendor

ON Purchasing.PurchaseOrderDetail.ProductID =

Purchasing.ProductVendor.ProductID

where BusinessEntityID=@MaNCC

GROUP by Purchasing.ProductVendor.ProductID

)

Bai4

create function Discount_func()

returns table

as

return

(

select SalesOrderID,SubTotal,

Discount=case

when SubTotal<10 then 0

when SubTotal>=1000 and SubTotal<5000 then SubTotal*0.05

when SubTotal>=5000 and SubTotal<10000 then SubTotal*0.1

else SubTotal*0.15

end

from Sales.SalesOrderHeader

group by SalesOrderID,SubTotal

)

Bai5

Ngày đăng: 06/12/2016, 11:57

TỪ KHÓA LIÊN QUAN

w