إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

تمارين في مادة مقدمة السيكوال


2 رد (ردود) على هذا الموضوع

#1 انريكي

انريكي

    عضو نشط

  • الأعضــاء
  • 335 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Programming

تاريخ المشاركة 09 November 2010 - 12:24 AM


السلام عليكم جميعاً..


هذه تمارين لمادة مقدمة السيكوال مع الحلول أتمنى الإستفادة منها ...


الأسئلة :


ملف مرفق  Homework.doc   64كيلو   160 عدد مرات التحميل



الحل :

حل تمارين موديول 3


--جواب السؤال الأول
use library
SELECT title,title_no
FROM title
GO

--جواب السؤال الثاني
use library
SELECT title
FROM title
WHERE title_no=10
GO

--جواب السؤال الثالث
use library
select member_no,fine_paid
from loanhist
where fine_paid between 8 and 9
GO

--جواب السؤال الرابع
use library
SELECT author,title_no
FROM title
where author like 'Charles Dickens ' or author LIKE 'Jane Austen'
GO

--حل أخر لسؤال4
use library
SELECT author,title_no
FROM title
where author in ('Charles Dickens ','Jane Austen')
GO

--جواب السؤال الخامس
use library
SELECT title_no,title
FROM title
where title LIKE '[%adventures%]'
GO

--جواب السؤال السادس
use library
select member_no,fine_paid
from loanhist
where fine_paid is null
GO

--جواب السؤال السابع
use library
select distinct city,state
from adult
GO

--جواث السؤال الثامن
use library
select title 
from title
order by title asc
GO

--جواب السؤال التاسع
use library
select member_no,isbn,fine_paid,
fine_paid*2 as [double fine]
from loanhist
GO

--جواب السؤال العاشر 
use library
select firstname,substring(lastname,1,2)
from member
GO



حل تمارين موديول 4


--حل السؤال الأول"
use pubs
select TOP 10 ord_num,ord_num,qty
from sales
order by qty desc
GO

--حل السؤال الثاني"
USE PUBS
SELECT SUM (price)AS 'TOTAL PRICE'
FROM titleS
GO

--حل السؤال الثالث
USE PUBS
SELECT avg (price)AS ' AVERAGE'
FROM titleS
GO 

--حل السؤال الرابع
USE PUBS
select count(type)as 'Number of Books',type
from titles
group by type
order by type asc
GO

--حل السؤال الخامس
USE PUBS
select count(type)as 'Number of Books',type 
from titles
group by type
having sum(price)>50
order by type asc
GO

--حل السؤال السادس
USE PUBS
select title,type,sum(price)as 'total'
from titles
group by title,type
with cube
order by title asc,type asc
GO

--حل السؤال السابع
select title,type,price
from titles
compute sum(price),avg(price),max(price),min(price),count(price)




حل تمارين موديول 5


--1
use library
select m.firstname+' '+m.middleinitial+' '+m.lastname as 'Name',
a.city,a.city,a.zip
from member as m inner join adult as a
on m.member_no=a.member_no
where city ='boston'
GO
--2
use library
select t.title,i.translation,i.cover,c.copy_no,c.isbn
from title as t inner join [translation] as i 
on i.isbn=c.isbn  
inner join copy as c
on i.title_no=t.title_no
where isbn in(1,500,1000)
order by isbn
GO
--3
use library
select m.member_no,m.firstname,r.isbn,
convert(char(11),r.log_date,113)
from member as m inner join reservation as r
on m.member_no=r.member_no
where isbn=1
GO
--4
use library
SELECT a.member_no,count(*)as'kids num'
from adult as a inner join juvenile as j
on a.member_no=j.adult_member_no
where a.state='AZ' 
group by a.member_no
having count(*)>2
GO
--5
use library
SELECT a.member_no,count(*)as'kids num'
from adult as a inner join juvenile as j
on a.member_no=j.adult_member_no
where a.state='ca'
group by a.member_no
having count(*)>3
GO
--6
use library
SELECT a.member_no,count(*)as'kids num'
from adult as a inner join juvenile as j
on a.member_no=j.adult_member_no
where a.state='AZ' 
group by a.member_no
having count(*)>2
union
SELECT a.member_no,count(*)as'kids num'
from adult as a inner join juvenile as j
on a.member_no=j.adult_member_no
where a.state='ca'
group by a.member_no
having count(*)>3
order by a.member_no asc
GO
 



حل تمارين موديول 7


--1
use pubs
insert stores
values (8888,Pill,,Moon,NJ,,CA,4343)
--
select * from stores
--2
use pubs 
select stor_id,ord_date,qty
into [##my orders]
from sales
where ord_date>'1994'
order by ord_date desc
--
select*
from [##my orders]
--3
use pubs
insert jobs
values ([work],10,200)
--
select* from jobs
--عدل على سعر المنتج بإضافة 2 إلية للمنتجات المزودة من قبل 
--دولة"usa'الحل 
use northwind
update Products
where UnitPrice in
(select UnitPrice=UnitPrice+2
feom Products
where country-'usa')
--4
use pubs
delete discounts
where discount>5
--
select*
from discounts
--5
use pubs
delete from stores
from stores as st inner join sales as sa
on st.stor_id=sa.stor_id
where ord_date>'1/1/1994'
--
select *
from stores
--6
use pubs
update titles
set price=price-(price*0.20)
WHERE type='business' and Pub_id IN (1389,0736)
--
select*from titles
--7
use pubs
update titleauthor
set au_ord=10
from titleauthor as t inner join authors as a
on t.au_id =a.au_id
where state='ca'
--
select*from titleauthor



اسئلة موديول 6 مع الحل :

--استخرج رقم الطلبية ورقم الزبون وتاريخ الطلبية
--من جدول الطلبات,حيث أن التاريخ يساوي اكبر تاريخ للطلبات
--من نفس الموظف؟؟؟؟؟؟؟؟
USE NORTHWIND
SELECT OrderID,CustomerID,OrderDate
FROM Orders AS O1

WHERE OrderDate=

(SELECT MAX(OrderDate)
FROM Orders AS O2
WHERE O1.CustomerID=O2.CustomerID)
GO
--القاعدة Northwind
--استعلام يستخرج ارقام الموظفين واسمائهم واسماء عائلاتهم من جدول الموظفين 
--بحيث يكون رقم الموظف موجود في جدول الطلبيات وله طلبيه بيوم 7\4\1996؟
use northwind
select EmployeeID,FirstName,LastName
from Employees as e
where EmployeeID in
(select EmployeeID
from Orders as o
where e.EmployeeID=o.EmployeeID and orderdate='4\7\1996')

--استعلام يستخرج رقم الطلبية وسعرها من جدول تفاصيل الطلبيات للطلبيات
--التي سعرها اقل من مجموع الأسعار للطلبيات التي رقمها 10248؟
use northwind
select od1.OrderID,od1.UnitPrice
from [Order Details]as od1
where od1.UnitPrice<
(select sum(UnitPrice)
from [Order Details] as od2
where od1.OrderID=od2.OrderID and od2.OrderID=10248)
--استعلام يستخرج رقم الموظف ومسماه الوظيفي من جدول الموظفين بحيث يكون ال
--الموظف له طلبيات لدوله الشحن فرنساااا؟
use northwind
select e1.EmployeeID,e1.Title
from Employees as e1
where exists
(select*from orders
where shipcountry='france')




علماً أن المسائل تخص القاعدة LIBRARY إذا أحد يبي يطبق وماعنده القاعده انا مستعد ارسلها له


دعوة في ظهر الغيب تكفيني .....





#2 انريكي

انريكي

    عضو نشط

  • الأعضــاء
  • 335 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Programming

تاريخ المشاركة 09 November 2010 - 12:32 AM



تمرين أخر يشمل جميع الفصول ..



س1: باستخدام نورث ويند انشئ جدول جديد مؤقت عام باسم تيمب يحوي البيانات التاليه
اسم الموظف واسم العائله كحقل واحد باسم الاسم الكامل وتاريخ الطلبيه ومدينه الربون من جدول الموظفين
والطلبيات والزبائن بحيث المدينه لندن والتاريخ بعد عام 1997 مرتبا من الاحدث للاقدم؟


س2: عدل ع اوردرز على حقل تاريخ الشحن بجعل قيمته تاريخ الشحن بعد عشره ايام عليه للطلبيات التي مدينه الموظف لندن؟



الحل ::

use northwind
select e.firstname+' '+LastName as 'full name',o.OrderDate,c.City
into [##t emp]
from Employees as e inner join Orders as o
on e.EmployeeID=o.EmployeeID
inner join Customers as c
on c.CustomerID=o.CustomerID
where c.city='london'and OrderDate>'12/13/1997'
order by OrderDate desc 
GO


update orders
set shippeddate=dateadd(dd,10,shippedid)
where city='london'


#3 انريكي

انريكي

    عضو نشط

  • الأعضــاء
  • 335 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Programming

تاريخ المشاركة 09 November 2010 - 12:36 AM




تمرين أخر شااااامل لمادة مقدمة السيكوال ...

على القاعدة Northwind

استخرج رقم الطلبية ورقم المنتج ومجموع السعر الكلي لكل طلبيات المنتجات من جدول Order Details حيث أن الطلبيات تخضع لخصم و أسعار المنتجات يتجاوز 100 ويكون فيها أيضاً معدل السعر الكلي يتجاوز 5000 ثم أظهر أعلى خمس أسعار كلية مع إلغاء التكرار في السجلات ومع إظهار بيانات تلخيصية تفصيلية ..؟؟

الحل:

USE Northwind
SELECT DISTINCT TOP 5 orderid,productid,
SUM(unitprice*quantity) AS Total,
(unitprice*quantity)
FROM [order details]
WHERE discount<>0 and unitprice>100
GROUP BY orderid,productid,unitprice,quantity
WITH CUBE
HAVING AVG(unitprice*quantity) >5000
ORDER BY (unitprice*quantity) DESC