VISITORS SINCE 29/12/2007 = 128

ΠΡΟΓΡΑΜΜΑΤΑ  ACCESS XP  - SQL SERVER

1. Από τη βάση δεδομένων BOOKS.MDB  πρόγραμμα που επιλέγει πληροφορίες για τους πελάτες και τις αγορές τους που ξεπερνούν τα 100 $ .

SELECT tblCustomers.CustomerID, tblCustomers.FirstName, tblCustomers.LastName, tblOrders.OrderDate, tblOrderDetails.ISBNNumber, tblBooks.Title, tblOrderDetails.Quantity, tblOrderDetails.Discount, tblBooks.SuggPrice, CCur(CLng((tblOrderDetails.Quantity*tblBooks.SuggPrice)*(1-tblOrderDetails.Discount)*100)/100) AS ExtPrice
FROM (tblCustomers INNER JOIN tblOrders ON tblCustomers.CustomerID = tblOrders.CustomerID) INNER JOIN (tblBooks INNER JOIN tblOrderDetails ON tblBooks.ISBNNumber = tblOrderDetails.ISBNNumber) ON tblOrders.OrderID = tblOrderDetails.OrderID
WHERE (((CCur(CLng((tblOrderDetails.Quantity*tblBooks.SuggPrice)*(1-tblOrderDetails.Discount)*100)/100))>100));

ΕΝΤΟΛΗ CCur : μετατροπή έκφρασης σε νομισματική μονάδα $

ΕΝΤΟΛΗ Clng : μετατροπή αριθμού σε ακέραιο long integer 

 

2. Από τη βάση δεδομένων BOOKS.MDB πρόγραμμα που υπολογίζει το σύνολο κάθε παραγγελίας .

 

SELECT tblOrders.OrderID, tblOrders.OrderDate, tblCustomers.CustomerID, tblCustomers.City, tblCustomers.StateOrProvince, tblCustomers.PostalCode, Sum(([Quantity]*[SuggPrice])*(1-[Discount])) AS OrderTot
FROM (tblCustomers INNER JOIN tblOrders ON tblCustomers.CustomerID = tblOrders.CustomerID) INNER JOIN (tblBooks INNER JOIN tblOrderDetails ON tblBooks.ISBNNumber = tblOrderDetails.ISBNNumber) ON tblOrders.OrderID = tblOrderDetails.OrderID
GROUP BY tblOrders.OrderID, tblOrders.OrderDate, tblCustomers.CustomerID, tblCustomers.City, tblCustomers.StateOrProvince, tblCustomers.PostalCode;

3. Πρόγραμμα που βασίζεται στο πρόγραμμα 2 για να εντοπίσει τη μεγαλύτερη παραγγελία .

 

SELECT qxmplOrderTotals.PostalCode, Max(qxmplOrderTotals.OrderTot) AS MaxOfOrderTot
FROM qxmplOrderTotals
GROUP BY qxmplOrderTotals.PostalCode;

4. Πρόγραμμα για εύρεση μέσου όρου των τιμών και τη μέγιστη τιμή των ειδών του καταλόγου βιβλίων κατά κατηγορία  

 

SELECT tblCategories.Category, Avg(tblBooks.SuggPrice) AS AvgOfSuggPrice, Max(tblBooks.SuggPrice) AS MaxOfSuggPrice
FROM tblCategories INNER JOIN (tblBooks INNER JOIN tblBookCategories ON tblBooks.ISBNNumber = tblBookCategories.ISBNNumber) ON tblCategories.CategoryID = tblBookCategories.CategoryID
GROUP BY tblCategories.Category;

 5. Πρόγραμμα που υπολογίζει το σύνολο κάθε παραγγελίας . Βρίσκουμε τις πόλεις στις οποίες ο μέσος όρος των αγορών των πελατών είναι μικρότερος από το μέσο όρο των αγορών όλων των πελατών .

 

SELECT tblOrders.OrderID, tblOrders.OrderDate, tblCustomers.CustomerID, tblCustomers.City, tblCustomers.StateOrProvince, tblCustomers.PostalCode, Sum(([Quantity]*[SuggPrice])*(1-[Discount])) AS OrderTot
FROM (tblCustomers INNER JOIN tblOrders ON tblCustomers.CustomerID = tblOrders.CustomerID) INNER JOIN (tblBooks INNER JOIN tblOrderDetails ON tblBooks.ISBNNumber = tblOrderDetails.ISBNNumber) ON tblOrders.OrderID = tblOrderDetails.OrderID
GROUP BY tblOrders.OrderID, tblOrders.OrderDate, tblCustomers.CustomerID, tblCustomers.City, tblCustomers.StateOrProvince, tblCustomers.PostalCode;

6. Ερώτημα που βασίζεται στο Ερώτημα 5 για τον εντοπισμό της μεγαλύτερης παραγγελίας 

 

SELECT qxmplOrderTotals.City, Avg(qxmplOrderTotals.OrderTot) AS AvgOfOrderTot
FROM qxmplOrderTotals
GROUP BY qxmplOrderTotals.City
HAVING (((Avg(qxmplOrderTotals.OrderTot))<(SELECT Avg([OrderTot]) FROM qxmplOrderTotals)));

7. Πρόγραμμα που υπολογίζει το σύνολο κάθε παραγγελίας (Πρόγραμμα 5) και πρόγραμμα για τον εντοπισμό της μεγαλύτερης παραγγελίας .  Βρίσκουμε το μέσο όρο και τη μέγιστη τιμή της ποσότητας των παραγγελιών της πολιτείας Washington για κάθε μήνα που η μέγιστη ποσότητα παραγγελιών ήταν κάτω από 1900 $ .

 

SELECT Month([OrderDate]) AS [Month], Avg(qxmplOrderTotals.OrderTot) AS AvgOfOrderTot, Max(qxmplOrderTotals.OrderTot) AS MaxOfOrderTot
FROM qxmplOrderTotals
WHERE (((qxmplOrderTotals.StateOrProvince)="WA"))
GROUP BY Month([OrderDate])
HAVING (((Max(qxmplOrderTotals.OrderTot))<1900));

 

8. Πρόγραμμα για να επιλέξουμε  πληροφορίες για τα βιβλία και τους συγγραφείς τους ταξινομημένες κατά κωδικό βιβλίου (ISBN ) 

 

SELECT tblBooks.*, [tblAuthors].[LastName] & ", " & [tblAuthors].[FirstName] & IIf(IsNull([tblAuthors].[MiddleInit]),Null," " & [tblAuthors].[MiddleInit] & ".") AS AuthorName, tblAuthors.EmailAddress, tblAuthors.Photograph, tblAuthors.Bio
FROM tblBooks INNER JOIN (tblAuthors INNER JOIN tblBookAuthor ON tblAuthors.AuthorID = tblBookAuthor.AuthorID) ON tblBooks.ISBNNumber = tblBookAuthor.ISBNNumber;

9.  Πρόγραμμα για να βρούμε ποιοί πελάτες δεν έστειλαν παραγγελία με αριθμό 25 .

 

SELECT tblCustomers.CustomerID, tblCustomers.LastName, tblCustomers.FirstName, tblCustomers.MiddleInit
FROM tblCustomers INNER JOIN tblOrders ON tblCustomers.CustomerID <> tblOrders.CustomerID
WHERE (((tblOrders.OrderID)=25));

 

10. Πρόγραμμα που εντοπίζει τα βιβλία για τα οποία έχουν γίνει παραγγελίες τις τελευταίες 90 ημέρες .

 

SELECT DISTINCTROW tblBooks.ISBNNumber
FROM tblBooks INNER JOIN (tblOrders INNER JOIN tblOrderDetails ON tblOrders.OrderID = tblOrderDetails.OrderID) ON tblBooks.ISBNNumber = tblOrderDetails.ISBNNumber
WHERE (((tblOrders.OrderDate) Between Date() And Date()-90));

11. Πρόγραμμα που βασίζεται στο πρόγραμμα 10 και εντοπίζει τα βιβλία για τα οποία δεν έχει γίνει καμιά παραγγελία .

 

SELECT tblBooks.ISBNNumber, tblBooks.Title
FROM qxmplBooksInLast90Days RIGHT JOIN tblBooks ON qxmplBooksInLast90Days.ISBNNumber = tblBooks.ISBNNumber
WHERE (((qxmplBooksInLast90Days.ISBNNumber) Is Null));

12. Πρόγραμμα με το οποίο λαμβάνουμε κατάλογο βιβλίων και των ποσοτήτων τους που είναι υπό παραγγελία ταξινομημένα κατά κατηγορία βιβλίων 

 

SELECT tblCategories.Category, tblBooks.Title, tblOrderDetails.Quantity
FROM tblCategories INNER JOIN ((tblBooks INNER JOIN tblBookCategories ON tblBooks.ISBNNumber = tblBookCategories.ISBNNumber) INNER JOIN tblOrderDetails ON tblBooks.ISBNNumber = tblOrderDetails.ISBNNumber) ON tblCategories.CategoryID = tblBookCategories.CategoryID
ORDER BY tblCategories.Category;

13. Πρόγραμμα που βρίσκει όλους τους πελάτες της πολιτείας Washington και τους κατατάσει με φθίνουσα σειρά ως προς τον ταχυδρομικό κώδικα.

 

SELECT [tblCustomers].[LastName] & ", " & [tblCustomers].[FirstName] & IIf(IsNull([tblCustomers].[MiddleInit]),Null," " & [tblCustomers].[MiddleInit] & ".") AS Name, tblCustomers.City, tblCustomers.PostalCode
FROM tblCustomers Where tblCustomers.StateOrProvince = "WA"
UNION SELECT tblStores.StoreName, tblStores.City, tblStores.PostalCode
FROM tblStores Where tblStores.StateOrProvince = "WA"
ORDER BY PostalCode DESC;