Giả sử có Table Sinhvien(Masv, Hosv, Tensv, Ngaysinh, Phai). Trong đó Ngaysinh(D,Short date) và PHAI(Yes/no). Để hiển thị danh sách sinh viên gồm : Masv; Hosv; Tensv; Namsinh; Tuoi (Tuoi : Năm hiện tại – năm sinh) ta thực hiện câu truy vấn
A.
Select Masv, Hosv, Tensv, Namsinh, Tuoi From Sinhvien Where Tuoi=Year(Date())-Year([Namsinh]);
B.
Select Masv, Hosv, Tensv, Namsinh, Year(Date())-Year([Namsinh]) As Tuoi From Sinhvien
C.
Select Masv, Hosv, Tensv, Namsinh, Tuoi From Sinhvien Where Tuoi:Year(Date())-Year([Namsinh]);
D.
Select Masv, Hosv, Tensv, Namsinh, Tuoi As Year(Date())-Year([Namsinh]) AS From Sinhvien
Trả lời:
Đáp án đúng: B
Câu hỏi yêu cầu hiển thị danh sách sinh viên cùng với tuổi của họ, được tính bằng năm hiện tại trừ đi năm sinh.
* **Phương án A:** Sai vì sử dụng mệnh đề `WHERE` để gán giá trị cho cột `Tuoi`. Mệnh đề `WHERE` dùng để lọc dữ liệu, không dùng để tính toán và gán giá trị.
* **Phương án B:** Đúng. Sử dụng hàm `Year(Date())` để lấy năm hiện tại và hàm `Year([Namsinh])` để lấy năm sinh, sau đó trừ hai giá trị này để tính tuổi. `As Tuoi` được sử dụng để đặt tên cho cột kết quả là `Tuoi`.
* **Phương án C:** Sai vì sử dụng toán tử `:` không hợp lệ trong mệnh đề `WHERE`. Toán tử này không được sử dụng để gán giá trị hoặc so sánh trong SQL.
* **Phương án D:** Sai vì cú pháp `Tuoi As Year(Date())-Year([Namsinh]) AS` không hợp lệ. Cú pháp đúng phải là `Year(Date())-Year([Namsinh]) As Tuoi`.
Vậy, phương án B là phương án đúng nhất.
50 câu hỏi 60 phút
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
