Bài Tập 1: Sử Dụng Truy Vấn Nâng Cao SQL | Tìm ở đây

Skip to content
  • Khoá học / SQL
  • 11
Bài tập 1: Sử dụng truy vấn nâng cao SQL

Tham khảo thêm

Đề hoàn thành các bài tập phía dưới, các bạn tham nên đọc các bài viết vể sử dụng câu lệnh SQL:

  1. Cơ sở dữ liệu và Câu lệnh SQL
  2. Thực thi câu lệnh SQL

Yêu cầu

Sử dụng hệ quản trị CSDL SQL Server thực hiện các công việc sau:

  1. Tạo một CSDL mới có tên QLKhachHang (sử dụng SQL Management Studio (SMS) hoặc Query Editor (QE))
  2. Tạo 2 bảng dữ liệu và chèn dữ liệu vào các bảng như ở bên dưới (sử dụng SMS hoặc QE):

Bảng KhachHang

IdKhachHang (Int) TenKH (nVarChar(50))
1 Nguyễn Tuấn Anh
2 Trần Văn Biên
3 Nguyễn Đức Dũng
4 Trần Hiếu
5 Lê Đức Chiến
6 Trần Hài Hả

Bảng DatHang

IdDatHang (Int) IdKhachHang (Int) TenSP (nvarchar(50)) NgayXL

(datetime)

1 2 Iphone 7 ‘2002-12-01’
2 3 Samsung Note 5 ‘2000-03-02’
3 2 Ipad 2 mini ‘2003-08-03’
4 1 Lenovo ‘2001-05-12’
5 4 Asus ‘2002-10-04’
6 7 Mac Pro ‘2002-03-08’
7 8 Sony Vio ‘2002-05-02’
  1. Truy vấn dữ liệu sử dụng câu lệnh Select cùng với sử dụng JOIN (sử dụng QA)
    • Inner Join
    • Left Outter Join
    • Right Outer Join
    • Full Outer Join
    • Cross Join

Kế quả của câu truy vấn phải được hiển thị theo định dạng sau

IdDatHang TenKH TenSP NgayXL
Mách nhỏ: Dựa trên dữ liệu cung cấp và kiến thức của bạn về các kiểu JOIN, bạn hãy đoán kết quả rồi sau đó so sánh kết quả với mỗi câu lệnh Select. Bạn cũng có thể sử dụng từ khoá As để đặt một tên cột khác cho cột trong các câu truy vấn.
  1. Sử dụng câu lệnh “Select * Into…From” để tạo một bảng mới đặt tên là “XuLyDH” và chứa dữ liệu trong bảng này với dữ liệu lấy từ bảng DatHang thoả mãn điều kiện NgayXL trước ngày ‘2002-10-05’. (sử dụng QE)
  2. Sử dụng câu lệnh “Insert Into…Select” để lấy 1 bản ghi TOP từ “DatHang” và chèn vào bảng “XuLyDH” (sử dụng QE)
  3. Delete một bản ghi từ bảng XyLyDH thoả mãn điều kiện NgayXL là ‘2002-10-04’. (sử dụng QE)
  4. Sử dụng Union để hợp dữ liệu từ hai tập dữ liệu DatHangXuLyDH thành một tập dữ liệu. (sử dụng QA)
  5. Áp dụng Constraints (sử dụng SSM hoặc QE)
  6. Áp dụng Primary Constraint cho các cột “Id” trong các bảng trên.
  7. Áp dụng Foreign Key Constraint cho bảng DatHang.
  8. Áp dụng Check Constraint để cột NgayXL có dữ liệu ngày trong khoảng ‘1970-01-01’ – ‘2050-01-01’ và thử chèn một bản ghi không hợp lệ với điều kiện trên để xem SQL có chạy không.
  9. Áp dụng Unique Constraint cho cột TenKH của bảng KhachHang
  10. Back up cơ sở dữ liệu và Restore tới một chỗ khác (có thể trên một server khác hoặc trên cùng một server nhưng với tên CSDL khác) (sử dụng SSM hoặc QE)
  11. TruncateDrop bảng XuLyDH (sử dụng QE)

Tags: bài tập SQLbài tập sql serverhệ quản trị cơ sở dữ liệuSQL Server

  • Next story Bài 5: Toàn vẹn dữ liệu và các kỹ thuật truy vấn nâng cao
  • Previous story Bài 48: Sự kiện Server-Sent trong HTML5

You may also like...

  • Khoá học CSS 0

    Bài 13: Phông chữ trong CSS (CSS Fonts)

    21/01/2020

    by Trần Thương · Published 21/01/2020 · Last modified 07/02/2020

  • Khoá học C# 12

    Chuyển số thành chuỗi bằng C#

    06/06/2019

    by Phan Tiến · Published 06/06/2019 · Last modified 02/04/2020

  • 2

    Sử dụng thư viện pthead

    29/02/2016

    by Phan Tiến · Published 29/02/2016 · Last modified 20/10/2020

11 Responses

  • Comments10
  • Pingbacks1
  1. HHOA viết: 24/11/2018 lúc 10:04 sáng

    KO CO LOI GIA .

    Đăng nhập để bình luận
    • Tungmv viết: 18/04/2019 lúc 10:35 sáng

      có gợi ý trong câu hỏi đó luôn bạn 😀

      Đăng nhập để bình luận
  2. Bich viết: 17/06/2019 lúc 4:47 chiều

    câu 5 giải như thế nào ạ

    Đăng nhập để bình luận
    • Phan Tiến viết: 17/06/2019 lúc 5:13 chiều

      Em tham khảo đáp án này: Câu 4: SELECT * INTO XuLyDH FROM DatHang WHERE NgayXL > ‘2002-10-05’; Câu 5: INSERT INTO XuLyDH FROM TOP 1 * FROM DatHang

      Đăng nhập để bình luận
      • Quang Trịnh Minh viết: 23/08/2019 lúc 2:29 chiều

        Câu 4 phải là SELECT chứ sao lại INSERT INTO được cậu

        Đăng nhập để bình luận
        • Nguyễn Văn Trang viết: 24/08/2019 lúc 11:00 chiều

          Theo bạn với câu hỏi số 4 thì phương án của bạn như thế nào? Bạn up lên cho mọi người tham khảo

          Đăng nhập để bình luận
  3. Liên viết: 17/06/2019 lúc 8:21 chiều

    câu 9 làm sao ạ

    Đăng nhập để bình luận
    • Phan Tiến viết: 17/06/2019 lúc 11:02 chiều

      Liên quan đến tạo Primary Contrainsts, trước khi làm phần này bạn cần hiểu rõ thế nào gọi là Primary Key Contraints? 1. Ràng buộc PRIMARY KEY xác định duy nhất mỗi bản ghi trong bảng. 2. Các primary keys phải chứa các giá trị duy nhất và không chứa các giá trị NULL. 3. Một bảng chỉ có thể có MỘT khoá chính (primary key), và trong một bảng, khoá chính này có thể là một cột hoặc nhiều cột (fields) Theo định nghĩa trên, bạn có thể sử dụng câu lệnh SQL để cập nhật cho các bảng ví dụ: --Với bảng Khách Hàng khoá chính chỉ có 1 cột ALTER TABLE KhachHang ADD PRIMARY KEY (IdKhachHang);

      --Với bảng Đặt Hàng khoá chính sẽ là 2 cột IDDatHang và IdKhachHang ALTER TABLE Persons ADD CONSTRAINT PK_DatHang PRIMARY KEY (IdDatHang, IdKhachHang);

      Đăng nhập để bình luận
  4. Nguyễn Xuân Lâm viết: 01/08/2020 lúc 4:04 chiều

    cho e hỏi về việc truy vấn ạ! e muốn viết 1 câu truy vấn mà có thể xem hết tất cả các bảng của database ấy ạ

    Đăng nhập để bình luận
    • Phan Tiến viết: 10/08/2020 lúc 10:35 sáng

      Em xem thêm bài này: https://timoday.edu.vn/sql-server-cau-lenh-sql-hien-thi-tat-ca-cac-bang/

      Đăng nhập để bình luận
  1. Bài 6: Stored Procedure và T-SQL nâng cao – Tran Van Toan 25/05/2017

    […] Ví dụ: Giả sử ta setup một Linked Server vào Access database “QLKhachHang.mdb” trong đó các table đều tương tự như CSDL QLKhachHang trong SQL Server (được tạo ra từ  bài tập số 1). […]

Để lại một bình luận Hủy

Bạn phải đăng nhập để gửi bình luận.

Follow:

  • Recent Posts
  • Popular Posts
  • Recent Comments
  • Tags
  • sqlite

    Khoá học / SQLite

    Bài 1: Tổng quan về SQLite – Cơ sở dữ liệu nhỏ gọn nhưng mạnh mẽ

    14/12/2025

  • Học Python

    Khoa học dữ liệu

    Hướng dẫn tạo môi trường ảo Python trên Windows và MacOs

    06/12/2024

  • Lập trình Java căn bản

    Lập trình Java

    Bài 7: Nhập/Xuất trong Java

    28/11/2024

  • Lập trình Java căn bản

    Lập trình Java

    Bài 6: Chuyển đổi kiểu dữ liệu

    25/11/2024

  • Lập trình Java căn bản

    Lập trình Java

    Bài 5: Biến và kiểu dữ liệu trong Java

    22/11/2024

  • Lập trình Java căn bản

    Lập trình Java

    Bài 4: Tạo dự án Java đầu tiên bằng IntelliJ

    19/11/2024

  • Lập trình Java căn bản

    Lập trình Java

    Bài 3: Cài đặt IntelliJ – IDE tốt nhất cho Java

    19/11/2024

  • Lập trình Java căn bản

    Lập trình Java

    Bài 2: Cài đặt JDK – Java Development Kit

    18/11/2024

  • Lập trình Java căn bản

    Lập trình Java

    Bài 1: Giới thiệu về ngôn ngữ lập trình Java

    18/11/2024

  • python pyqt

    PyQt6 và Qt Designer

    Tìm hiểu về QLineEdit trong PyQt6

    04/11/2024

  • python pyqt

    PyQt6 và Qt Designer

    Tìm hiểu về QPushButton trong PyQt6

    21/10/2024

  • python pyqt

    PyQt6 và Qt Designer

    Tìm hiểu về QLabel trong PyQt6

    17/10/2024

  • python pyqt

    PyQt6 và Qt Designer

    Giới thiệu Signals và Slots trong PyQt

    12/09/2024

  • Trò chơi Hamster Kombat

    Tin tức

    Với 250 triệu người chơi, Hamster Kombat đang là mục tiêu tấn công của phần mềm độc hại

    24/07/2024

  • Màn hình xanh chết chóc

    Tin tức

    Màn hình xanh chết chóc (Blue Screen) là gì?

    21/07/2024

  • Cách bảo vệ an toàn trên Internet

    Tin tức

    Khuyến nghị để đảm bảo an toàn thông tin khi truy cập Internet

    19/07/2024

  • python pyqt

    PyQt6 và Qt Designer

    PyQt6 Hello World

    15/07/2024

  • python pyqt

    PyQt6 và Qt Designer

    Giới thiệu về công cụ Qt Designer

    11/07/2024

  • python pyqt

    PyQt6 và Qt Designer

    Giới thiệu về thư viện PyQt6

    04/07/2024

  • Học Python

    Học lập trình Python

    Xác thực Password với biểu thức chính quy (Regular Expression) trong Python

    25/06/2024

  • Phan Tiến says: Em search thư viện này trên google rồi tải về, để...
  • [email protected] says: Bản 64bit bị thiếu file MTCH.dll thầy ơi
  • bichhuynh says: dạ anh ơi cho em hỏi chức năng doubleclick ở form...
  • Giới thiệu về thư viện PyQt6 | Tìm ở đây says: […] Trước khi bắt đầu lập trình xây dựng giao diện...
  • Xác thực Password với biểu thức chính quy (Regular Expression) trong Python | Tìm ở đây says: […] bài viết trước, ta được tìm hiểu về cách Xác...
  • Minh Nguyen says: Cho em hỏi là em code giống vs mẫu sao lúc...
  • zsaka2003 says: còn mục hàng tồn và doanh thu đâu ạ??
  • zsaka2003 says: thưa thầy em gặp phải lỗi như bên dưới thì sửa...
  • Phan Tiến says: Theo em số nào số lẻ? Nếu em kiểm tra được...
  • nha says: Dạ em chào thầy em đang làm đề tài này,thầy cho...
  • viet5121198 says: Thầy ơi em bị ntn làm cách nào để sửa ạ...
  • Phan Tiến says: Mình đang hiểu bạn đang hỏi về hệ quản trị cơ...
  • Bài 9: Biến và câu lệnh khai báo biến | Tìm ở đây says: […] kiểu dữ liệu cho biến sao cho phù hợp. <tên...
  • NinhAql says: Cho em hỏi là bài này mình sử dụng cấu trúc...
  • Bài 5: Cấu trúc chung của chương trình C++ | Tìm ở đây says: […] Xét lại chương trình đầu tiên được nhắc đến trong...
  • thinhbsua123 says: gán hết rồi vẫn bị ạ
  • sondinh03 says: EM muốn đăng ký thì phải làm gì ạ?
  • kuchiba123 says: Dạ anh ơi cho em hỏi lỗi lúc e chạy thử...
  • thanhlam212 says: Bài giảng rất đầy đủ và dễ hiểu ạ, mong thầy...
  • tien_tx1210 says: thầy ơi, thầy xem giúp em lỗi này là bị gì...
  • .NET C# Computer Graphic CSS Công nghệ phần mềm GIS Google Classroom google maps html html5 học css Học lập trình học python Java JavaScript kiểm thử cho thiết bị di động Kiểm thử phần mềm lap trinh lập trình C# lập trình C/C++ Lập trình Java Lập trình phân tán lập trình python lập trình scratch Lập trình đồ hoạ máy tính MS Excel ngôn ngữ C OpenGL PHP phát triển phần mềm Phần mềm học trực tuyến python Quiz Sharepoint SQL SQL Server Sử dụng mảng CSharp T-SQL testing application testing mobile thủ thuật Excel tin học ứng dụng Tính toán song song xử lý số liệu Đồ hoạ máy tính

More

Danh mục

  • .Net (39)
  • Access (1)
  • Android (2)
  • API (1)
  • Bài báo (2)
  • Bài tập C/C++ (9)
  • Bài tập Java (43)
  • Bài tập Python (24)
  • Cấu trúc dữ liệu và giải thuật (1)
  • CSS (49)
  • Demo (1)
  • Excel (31)
  • GIS (14)
  • Google Maps (7)
  • Học lập trình Python (2)
  • Học Lập trình qua Project (5)
  • HTML (55)
  • JavaScript (4)
  • Khoá học (217)
  • Khoa học dữ liệu (1)
  • Kiểm thử phần mềm (15)
  • Kiểm thử ứng dụng di động (3)
  • Lập trình C (26)
  • Lập trình C++ (9)
  • Lập trình Java (7)
  • Lập trình Mobile (2)
  • Lập trình Scratch (15)
  • Learning English (1)
  • Nghiên cứu (5)
  • Phát triển ứng dụng (2)
  • Phát triển ứng dụng WEB (1)
  • PHP (12)
  • PowerPoint (4)
  • PyQt6 và Qt Designer (7)
  • Python (6)
  • Sách, bài giảng (25)
  • SEO (1)
  • Sharepoint (4)
  • SQL (22)
  • SQLite (1)
  • Tài liệu (24)
  • Thư giãn (8)
  • Thủ thuật (33)
  • Tin học văn phòng (44)
  • Tin học đại cương (9)
  • Tin tức (31)
  • Tính toán phân tán (3)
  • Tính toán song song (7)
  • Tổng hợp (3)
  • Tuyển sinh – Việc làm (2)
  • Word (5)
  • Xử lý ngôn ngữ (4)
  • Đồ hoạ máy tính (3)

Từ khóa » Bài Tập Sql Từ Cơ Bản đến Nâng Cao