Một CSDL có tên là HumanResources chứa thông tin tất cả nhân viên (employee) và vị trí các văn phòng chi nhánh (office location). Nhân viên hiện hành được gán cụ thể cho 1 văn phòng nào đó và 1 văn phòng hiện hành có 1 hay nhiều nhân viên. Tuy nhiên CSDL cũng chứa các nhân viên năng động , họ không thuộc văn phòng nào cả, và cũng có những văn phòng năng động, nó không thực sự có 1 nhân viên nào cả. Bạn cần tạo 1 báo cáo hiển thị tất cả nhân viên và vị trí văn phòng, bao gồm cả hiện hành và năng động. Báo cáo sẽ hiển thị vị trí văn phòng (hiện hành hay năng động) tiếp theo là nhân viên thuộc văn phòng đó. Các nhân viên năng động nên hiển thị cùng chỗ với nhau trên báo cáo. Bạn sẽ dùng kịch bản nào sau đây?
A -
SELECT l.LocationName, e.FirstName, e.LastName FROM Employee AS e LEFT OUTER JOIN Location AS l ON e.LocationID= l.LocationID ORDER BY l.LocationName, e.LastName, e.FirstName
B -
SELECT l.LocationName, e.FirstName, e.LastName FROM Location AS 1 LEFT OUTER JOIN EMPLOYEE AS 1ON e.LocationID= l.LocationID ORDER BY l.LocationName, e.LastName, e.FirstName
C -
SELECT l.LocationName, e.FirstName, e.LastName FROM Employee AS e FULL OUTER JOIN Location AS 1ON e.LocationID= l.LocationID ORDER BY l.LocationName, e.LastName, e.FirstName
D -
SELECT l.LocationName, e.FirstName, e.LastName FROM Employee AS e CROSS JOIN Location AS 1 ORDER BY l.LocationName, e.LastName, e.FirstName
2-
Tính chất nào sau đây là cần thiết để 2 bảng có thể union (hợp) với nhau:
A -
Các thuộc tính phải cùng loại dữ liệu
B -
Các thuộc tính phải cùng dữ liệu
C -
Các thuộc tính có dữ liệu là duy nhất
D -
Các thuộc tính có loại dữ liệu khác nhau
3-
Bảng Appraisal (đánh giá) được tạo ra dùng để chứa kết quả đánh giá năng lực nhân viên mỗi quý. Lệnh tạo bảng này như sau: CREATE TABLE Appraisal ( cEmployeeCode char(6) not null, dDateOfAppraisal datetime not null, cReviewer char(15) not null, cStatus char(3) not null) Trường dDateOfAppraisal chứa ngày của mỗi đợt kiểm tra. Lệnh truy vấn nào sau đây giúp nhân viên tìm đuợc ngày thi kế tiếp của họ?
A -
SELECT datepart(mm,dDateOfAppraisal)+3 FROM Appraisal
B -
SELECT dateadd(mm,3,dDateOfAppraisal) FROM Appraisal
C -
SELECT dateadd(qq,3, dDateOfAppraisal) FROM Appraisal
D -
SELECT datepart(mm,dDateOfAppraisal) FROM Appraisal
4-
Lệnh nào sau đây dùng để xoá tất cả các hàng của 1 một bảng mà không kích hoạt trigger:
A -
DELETE
B -
TRUNCATE
C -
DROP
D -
REMOVE
5-
Đề hiển thị thành phố nơi mà các tác giả không sống cùng thành phố với nhà xuất bản trong CSDL mẫu Pubs, ngườia ta đã thực hiện lệnh sau:
A -
"SELECT DISTINCT city FROM authors WHERE city NOT IN (select a.city from authors a join publishers p on a.city = p.city)"
B -
"SELECT DISTINCT city FROM authors WHERE city NOT IN (SELECT city FROM publishers)"
C -
"SELECT DISTINCT city FROM authors WHERE NOT EXISTS (SELECT * FROM publishers WHERE authors.city = publishers.city)"
D -
Cả ba lệnh trên đều đúng
6-
Xác định toán tử nào cho phép chọn 1 giá trị phù hợp với 1 trong các giá trị của một danh sách:
A -
IN
B -
AND
C -
OR
D -
NOT
7-
Trong CSDL Sales có bảng Sales chứa thông tin của các hoá đơn bán hàng từ các nhân viên bán hàng. Người quản lý yêu cầu bạn tạo 1 báo cáo chứa 20 nhân viên bán hàng giỏi nhất ( có doanh số bán hàng cao nhất) Truy vấn nào sau đây thực hiện được yêu cầu này?
A -
SELECT TOP 20 PERCENT LastName, FirstName, SUM (OrderAmount) AS ytd FROM sales GROUP BY LastName, FirstName ORDER BY SUM(OrderAmount) DESC
B -
SELECT LastName, FirstName, COUNT(*) AS sales FROM sales GROUP BY LastName, FirstName HAVING COUNT (*) > 20 ORDER BY SUM(OrderAmount) DESC
C -
SELECT TOP 20 LastName, FirstName, SUM (OrderAmount) AS ytd FROM sales GROUP BY LastName, FirstName ORDER BY SUM(OrderAmount) DESC
D -
SELECT TOP 20 WITH TIES LastName, FirstName, SUM (OrderAmount) AS ytd FROM sales GROUP BY LastName, FirstName ORDER BY SUM(OrderAmount) DESC
8-
Trong CSDL của 1 công ty, thông tin khách hàng (customer) được lưu trữ trong bảng Customers. Lệnh tạo bảng này như sau: CREATE TABLE Customers (CustomerID int NOT NULL, CustomerName varchar(30) NOT NULL, ContactName varchar(30) NULL, Phone varchar(20) NULL, Country varchar(30) NOT NULL, CONSTRAINT PK_Customers PRIMARY KEY (CustomerID)) Thường thì mỗi quốc gia (country) chỉ có từ 1 tới 2 khách hàng. Tuy nhiên cũng có 1 số quốc gia có tới 20 khách hàng. Phòng tiếp thị của công ty muốn gửi quảng cáo đến những quốc gia mà có nhiều hơn 10 khách hàng. Để tạo danh sách các quốc gia này, bạn sẽ dùng lệnh nào sau đây?
A -
SELECT Country FROM Customers GROUP BY Country HAVING COUNT (Country)>10
B -
SELECT TOP 10 Country FROM Customers
C -
SELECT TOP 10 Country FROM (SELECT DISTINCT Country FROM Customers) AS XGROUP BY Country HAVING COUNT(*)> 10
D -
SET ROWCOUNT 10 SELECT Country, COUNT (*) as "NumCountries" FROM Customers GROUP BY Country ORDER BY NumCountries, Desc
9-
Phát biểu SQL nào sau đây được dùng để hiển thị chỉ những hàng của bảng Titles mà trường ytd_sales chưa được tính toán:
A -
SELECT * FROM Titles WHERE Ytd_Sales = NULL
B -
SELECT * FROM Titles WHERE Ytd_Sales is NULL
C -
SELECT * FROM Titles WHERE Ytd_Sales =0
D -
SELECT * FROM Titles WHERE Ytd_Sales = ??
10-
Mệnh đề nào sau đây được dùng để hiển thị tên của tất cả các nhóm, kể cả những nhóm bị loại trừ khỏi mệnh đề WHERE từ 1 bảng được cho: