background img

Bài Viết Mới

SQL LANGUAGE : REFERENCE [Tips]

Bài này sẽ giới thiệu cho các bạn cách sử dụng cơ sở dữ liệu mẫu Northwind trên SQL SERVER. Thì tập tin đính kèm có 3 loại, là *.BAK, *.SQL, *.MDF
- Chúng ta sẽ lần lượt đi qua từng loại để các bạn biết cách xử lý chúng như thế nào cho lần sau

- Video sau đây sẽ hướng dẫn các bạn Import cơ sở dữ liệu vào SQL Server . Các bạn nên để chế độ HD cho chất lượng tốt hơn khi xem . . .
httpv://www.youtube.com/watch?v=zVawgo21qLk







 








































































































































































































Các Lệnh SQL cần nhớ
0. WHERE- Mệnh đề WHERE dùng để ràng buộc các điều kiện
- Một điều bạn cần nhớ là WHERE không phát huy tác dụng khi bạn sử dụng các hàm tập hợp, bạn có thể dùng HAVING để thay thế
1. AND / ORCú Pháp:
SELECT Cột1, Cột2, Cột3 FROM Bảng1, Bảng2 WHERE Điều Kiện 1 AND/OR Điều Kiện 2 




Example:
SELECT * FROM Employees WHERE BirthDate='12/08/1948' OR FirstName= 'ANNE';
SELECT CompanyName FROM Customers,Orders WHERE Orders.ShipVia='3' AND Orders.CustomerID = Customers.CustomerID;
2. ALTER TABLECú Pháp:
ALTER TABLE table_name ADD column_name datatype
ALTER TABLE table_name DROP COLUMN column_name 




- Lệnh ADD dùng tạo mới Table
- Lệnh DROP COLUM dùng để xóa một cột
- datatype : Kiểu dữ liệu của cột mới (Char, Nvarchar, int, date . . .)
3. AS (alias)Cú Pháp:
SELECT column_name AS column_alias FROM table_name
SELECT column_name FROM table_name AS table_alias 




Example:
SELECT FirstName From Employees AS BangNhanVien WHERE BangNhanVien.City='london';
SELECT FirstName AS TEN From Employees;
AS: Được dùng tạo bí danh cho cột hoặc bảng, nhằm rút gọn tên hoặc đổi tên hiển thị cho cột
4. BETWEENCú Pháp:
SELECT column_name FROM table_name WHERE column_name BETWEEN value1 AND value2; 




Example:
SELECT FirstName FROM Employees WHERE BirthDate BETWEEN '01/01/1945' AND '01/01/1960';
BETWEEN: giới hạn từ giá trị thứ nhất đến giá trị thứ hai.
5. CREATE DATABASECú Pháp:
CREATE DATABASE database_name;
Tạo database mới !
6. CREATE TABLECú Pháp:
CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name2 data_type,
...





- Dạng lệnh thế này bạn xem mẫu Northwind.sql để biết cú pháp trên SQL SERVER
7. CREATE INDEXCú Pháp
CREATE INDEX index_name ON table_name (column_name) 

CREATE UNIQUE INDEX index_name ON table_name (column_name)




Index: Giúp SQL truy xuất dữ liệu nhanh hơn, tuy nhiên khiến hệ thống chậm chạp hơn một chút so với việc không dùng Index
Xem mẫu Northwind.sql để biết cú pháp trên SQL SERVER
8. CREATE VIEWCú Pháp:
CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition 




- Chức năng của View là tạo một bảng giả lập lấy nguồn dữ liệu từ bảng gốc, đáp ứng xem theo yêu cầu của người dùng mà không cần tạo bảng mới
Xem mẫu Northwind.sql để biết cú pháp trên SQL SERVER
9. DELETECú Pháp:
DELETE FROM table_name WHERE some_column=some_value
- Xóa dữ liệu trong bảng theo điều kiện
DELETE FROM table_name
DELETE * FROM table_name
- 2 lệnh này xóa toàn bộ nội dung của bảng 




DELETE FROM Employees WHERE FirstName='TUAN'; // Chỉ xóa hàng có tên là "TUAN"
DELETE FROM Employees;
10. DROP DATABASECú Pháp:
DROP DATABASE database_name 




- Chỉ có chức năng duy nhất là xóa hẳn Database // Cần thận khi test lệnh này
11. DROP INDEXCú Pháp:
DROP INDEX table_name.index_name (SQL Server)
DROP INDEX index_name ON table_name (MS Access)
DROP INDEX index_name (DB2/Oracle)
ALTER TABLE table_name
DROP INDEX index_name (MySQL) 




- Lệnh này hủy Index
12. DROP TABLECú Pháp:
DROP TABLE table_name;
- Xóa hẳn một table // Cẩn thận khi dùng lệnh này
13. GROUP BYCú Pháp:
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name 




- Xem lại phần 3 của serial này !
- GROUP BY là một lệnh quan trọng nếu bạn sử dụng các hàm tập hợp
14. HAVING- Xem lại phần 3 của serial này !
- Bạn cần nhớ HAVING thay thế cho WHERE nếu chúng ta sử dụng các hàm tập hợp để tính,
15. INCú Pháp:
SELECT column_name FROM table_name WHERE column_name IN (value1,value2,..) 




Example:
SELECT FirstName FROM Employees WHERE Extension IN ('5467','3457');
- Dùng In tăng sức mạnh cho mệnh đề WHERE.
- Ở lệnh sql trên có điều kiện tại cột Extension chứa 2 giá trị(...) Nếu thỏa sẽ lấy ra FirstName
16. INSERT INTO- Lệnh này dùng để thêm mới dữ liệu vào bảng
- Các bạn xem lại Phần 1
17. INNER JOIN- Lệnh JOIN này lấy ra phần chung của 2 table
- Xem lại Phần 2
18. LEFT JOIN- Lệnh JOIN này lấy ra phần chung của Table 1,2 Và toàn bộ table 1
- Xem lại Phần 2
19. RIGHT JOIN- Lệnh JOIN này lấy ra phần chung của Table 1,2 Và toàn bộ table 2
- Xem lại Phần 2
20. FULL JOIN- Lấy ra các cột theo yêu cầu cho dù 2 table có Match hay không
- Nếu giá trị nào không match thì sẽ để trống
- Xem lại Phần 2
21. LIKE- Thêm ràng buộc cho mệnh đề WHERE
- Lấy ra các giá trị Match với yêu cầu đề ra 




SELECT FirstName FROM Employees WHERE LastName LIKE '%L%';
- Lệnh sql trên lấy ra FirstName Nếu LastName có chứa từ "L"
- Xem lại phần 2
22. ORDER BYNếu bạn muốn sắp xếp kết quả query ra thì cần phải sử dụng nó
- Nó có thể sắp xếp tăng dần hoặc giảm dần
23. SELECTLấy ra cái gì đó . . .
24. SELECT *Lấy ra tất cả ...
25. SELECT DISTINCT- Lấy ra các giá trị và bỏ qua các giá trị trùng
- Nếu 2 giá trị Match nhau thì chỉ lấy một
- Nếu 2 Row có các cột đều giống nhau thì chỉ lấy 1
- Phụ thuộc vào yêu cầu SELECT của chúng ta, nếu yêu cầu 1 cột thì nó sẽ so sánh 1 cột
26. SELECT INTO- Dùng để di chuyển dữ liệu từ bảng này sang bảng mới
27. SELECT TOP- Lấy ra dữ liệu trên cùng của Bảng
- Ví dụ ta lấy 20 hàng đầu tiên hoặc lấy các hàng đầu tiền 45% của tổng số hàng trong Bảng
- Xem lại Phần 2
28. TRUNCATE TABLEThay vì xóa luôn cả Bảng như DROP TABLE, lệnh này chỉ xóa toàn bộ nội dung của Bảng
29. UNION- Dùng để kết hợp các câu lệnh SELECT
- Xem lại Phần 2
30. UNION ALL- Xem lại ví dụ Phần 2
31. UPDATE- Dùng để cập nhật (sửa) lại dữ liệu trong Bảng

:hi:

BravoHex
Nguồn: Tự Học IT Online - http://tuhocit.net

2 nhận xét: Leave Your Comments

  1. Để cái tiêu đề như rứa là vi phạm nội quy nha @@
    Sao lại backlink trắng trợn thế kia :die_die: :onion42: :redcard:

    Trả lờiXóa
  2. Quá trắng trợn :head_hot: :head_hot: :head_hot:

    Trả lờiXóa

Xem Nhiều