Tải bản đầy đủ (.docx) (120 trang)

bài tìm hiểu My SQL, SQL sever

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (6.09 MB, 120 trang )

BÀI BÁO CÁO TÌM HIỂU SQL NHÓM 2
Phụ lục:


Select distinct
♣ The SELECT DISTINCT :
Đ/n: Câu lệnh The SELECT DISTINCT được sử dụng để trả về chỉ những giá trị khác
nhau.(trả về những giá trị duy nhất, không bị trùng )
a. SELECT DISTINCT

Syntax
SELECT DISTINCT column1, column2, ...
FROM table_name;
Example:
1. Từ table quản lý nhân viên: hãy đưa ra các bộ phận phòng ban trong công ty

Select Distinct Bo_phan
From quan_ly_nv;
kết quả:


2. Từ table quản lý nhân viên: hãy cho biết nhân viên làm việc trong công ty đến

từ các tỉnh nào

Select Distinct Que_Quan
From quan_ly_nv;
kết quả

b. SELECT DISTINCT + ORDER BY


SELECT DISTINCT column1, column2, ...
FROM table_name;
ORDER BY column name DESC/ASC
Example 1: Từ table Customers hãy cho biết khách hàng đến từ những quốc gia nào?
Hãy sắp xếp các quốc gia theo thứ tự tăng dần.
Table Customers:

SELECT DISTINCT Country FROM Customers
ORDER BY Country ASC;


Kết quả:

Example 2: Từ table Supplies hãy cho biết sản phẩm nhập từ các quốc gia và thuộc
tiểu bang khác nhau nào. Hãy sắp xếp theo thứ tự tăng dần.
Table Supplies:

SELECT DISTINCT city, state
FROM Suppliers
ORDER BY city, state;
Kết quả:


c. SELECT DISTINCT +WHERE

SELECT DISTINCT column1, column2, ...
FROM table_name;
WHERE condition
Example:Từ table quan_ly_kh hãy đưa ra danh sách những nhân viên đảm nhận
khách hàng không đến từ Đà Nẵng


Select Distinct NV_damnhan
FROM quan_ly_kh
Where Dia_chi not like '%Đà Nẵng';
Kết quả:

d. SELECT DISTINCT + WHERE + ORDER BY

SELECT DISTINCT column1, column2, ...
FROM table_name;
WHERE condition
ORDER BY column name
Example: Từ table Customers hãy cho biết khách hàng đến từ những quốc gia nào
trừ những quốc gia bắt đầu bằng chữ “A”? Hãy sắp xếp các quốc gia theo thứ tự
tăng dần.
Table Customers:


SELECT DISTINCT Country
FROM Customers
WHERE Country NOT LIKE 'A%'
ORDER BY Country ASC;
Kết quả:

♣ SELECT COUNT(DISTINCT)
Đ/n: Câu lệnh Select COUNT(Distinct.. ) dùng để đếm những giá trị khác nhau (giá trị
duy nhất) trong cột chỉ định
a. SELECT COUNT(DISTINCT)

Syntax

SELECT COUNT(DISTINCT column_name)
FROM Table_name
WHERE condition;


Example 1: Từ table quản lý nhân viên: hãy cho biết trong công ty có bao nhiêu
phòng ban.

Select COUNT(Distinct Bo_phan)
From quan_ly_nv;
Kết quả:

Example 2: Từ table quản lý nhân viên: hãy cho biết nhân viên làm việc trong công
ty đến từ bao nhiêu tỉnh thành


Select COUNT(Distinct Que_Quan)
From quan_ly_nv;
Kết quả:

b. SELECT COUNT (DISTINCT ) + WHERE

Example: Từ table quan_ly_kh hãy cho biết có bao nhiêu nhân viên đảm nhận khách
hàng không đến từ Đà Nẵng

Select COUNT (Distinct NV_damnhan)
From quan_ly_kh
Where Dia_chi Not Like '%Đà Nẵng';
Kết quả:


♣ SELECT Count(*) AS
Đ/n: câu lệnh dùng để đặt tên(bí danh) cho kết quả đếm.
Syntax:


SELECT Count(*) AS Name
FROM (SELECT DISTINCT column name FROM Table name);
Example: Từ table customer hãy đếm xem khách hàng đến từ bao nhiêu nước khác
nhau và đặt tên tạm thời cho kết quả là DistinctCountries

SELECT Count(*) AS DistinctCountries
FROM (SELECT DISTINCT Country FROM Customers)
;
Kết quả:

1. Từ table products hãy đếm xem có bao nhiêu loại sản phẩm khác và đặt tên

tạm thời cho kết quả là Distinctproduct


SELECT Count(*) AS Distinctproduct
FROM (SELECT DISTINCT productName FROM Products);
Kết quả:

SQL WHERE Clause:
♣ Where Clause:
Đ/n: Mệnh đề Where được dùng để lọc các record. Chỉ xuất ra những record đáp ứng được
yêu cầu (điều kiện) cụ thể
Syntax:
SELECT column1, column2, ...

FROM table_name
WHERE condition;
a. Mệnh đề WHERE trong trường hợp thông thường

Example: Từ table quan_ly_nv hãy xuất ra thông tin những nhân viên thuộc bộ phận
kinh doanh


Select *From quan_ly_nv
Where Bo_phan = 'Kinh doanh';
Kết quả:

b. Mệnh đề WHERE được sử dụng tương đương với INNER JOIN

SELECT table1.column_name, table2.column_name,…
FROM Table1, Table2
WHERE Table1.column_name=Table2.comlumn_name and condition(s);
Example: Từ Table SINHVIEN và Table KHOA, cho biết danh sách sinh viên Nam
khoa 'Cong Nghe Thong Tin' sắp xếp tăng dần theo tên
Table SINHVIEN:


Table KHOA:

SELECT HOSV,TENSV,MASV,NGAYSINH,PHAI,SINHVIEN.MAKHOA
FROM SINHVIEN,KHOA
WHERE SINHVIEN.MAKHOA = KHOA.MAKHOA and TENKHOA = 'Cong
Nghe Thong Tin' and PHAI = 'Nam'
ORDER BY TENSV;
Kết quả:


♣ AND, OR, NOT operators:
And, or,not là các toán tử được kết hợp trong mệnh đề Where.
AND: A and B (xuất record với điều kiện là cả A và B đều đúng)
Syntax:
SELECT column1, column2, ...
FROM table_name
WHERE condition1 AND condition2 AND condition3 ...;
OR: A or B (xuất record với điều kiện A đúng hoặc B đúng)
Syntax:
SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;
NOT: Not condition (xuất record với điều kiện đó không đúng)
Syntax:
SELECT column1, column2, ...
FROM table_name
WHERE NOT condition
♣ IN operator
In là toán tử nằm trong mệnh đề Where. Cho phép chỉ định nhiều điều kiện (nhiều giá trị
trong mệnh đề Where). Xuất ra record mà có 1 trong những điều kiện trong mệnh đề là
đúng. Thay vì dùng Or thì ta dùng In.
Syntax:


SELECT column1, column2,…
FROM table_name
WHERE column_name IN (value1, value2, ...);
Example: and , or, not, in
1. Từ table quan_ly_nv hãy xuất ra những nhân viên thuộc phòng kinh doanh và


đến từ Đà Nẵng

Select *From quan_ly_nv
Where Bo_phan = ‘Kinh doanh’ And Que_Quan = 'Đà Nẵng';
Kết quả:

2. Từ table quan_ly_nv hãy xuất ra những nhân viên không đến từ Đà Nẵng


Select *From quan_ly_nv
Where Not Que_Quan = 'Đà Nẵng';
Kết quả:

3. Từ table quan_ly_nv hãy xuất ra những nhân viên thuộc phòng nhân sự hoặc

nhân viên đến từ Đà Nẵng


Select *From quan_ly_nv
Where Bo_phan = ‘Nhân sự’ Or Que_Quan = 'Đà Nẵng';
Kết quả:

4. Từ table quan_ly_kh hãy xuất ra những khách hàng không đến từ Đà Nẵng.

Select KH_id, Ten_KH, Email, Dia_chi
From quan_ly_kh
Where Dia_chi Not Like '%Đà Nẵng';



Kết quả:

5. Từ table customer hãy xuất ra những khách hàng có Country='Germany' và

có City='Berlin'

SELECT * FROM Customers
WHERE Country='Germany' AND City='Berlin';

Kết quả:


6. Từ table customer hãy xuất ra những khách hàng có Country='Germany' và

có City='Berlin' hoặc City='München'

SELECT * FROM Customers
WHERE Country='Germany' AND (City='Berlin' OR City='München');
Kết quả:

7. Từ table customer hãy xuất ra những khách hàng có Country='Germany' hoặc

country = 'France' hoặc = 'UK' .


SELECT * FROM Customers
WHERE Country IN ('Germany', 'France', 'UK');
Kết quả:

8. Từ table customer hãy xuất ra những khách hàng có City=' London ' hoặc có


City='Berlin' hoặc City=' Paris '


SELECT * FROM Customers
WHERE City IN ('Berlin', 'London', 'Paris');
Kết quả:

♣ BETWEEN Operator
Đ/n: Chọn ra những giá trị nằm trong 1 khoảng nhất định, từ giá trị nhỏ nhất đến giá trị
lớn nhất được chỉ định. Các giá trị có thể ở dạng số, văn bản, ngày tháng.


Syntax:
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
Example:
1. Từ table products hãy xuất ra thông tin những sản phẩm có giá từ 10 đến 20.

SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20;
Kết quả:


2. Từ table products hãy xuất ra thông tin những sản phẩm có giá từ 30 đến 50

SELECT * FROM Products
WHERE Price BETWEEN 30 AND 50;



Kết quả:

3. Từ table products hãy xuất ra thông tin những sản phẩm có giá nhỏ hơn 10 và

lớn 20.

SELECT * FROM Products
WHERE Price NOT BETWEEN 10 AND 20;


Kết quả:

Aliases:
Đ/n: Aliases đựơc sử dụng để đặt tên tạm thời cho 1 cột, 1 bảng trong quá trình truy vấn
dữ liệu.
Syntax:
Column name
SELECT column_name AS alias_name
FROM table_name;
Table name
SELECT column_name(s)
FROM table_name AS alias_name;
Example:
1. Tong table Customer hãy xuất ra cột Customer ID và CustomerName lấy tên

là ID và Customer


SELECT CustomerID as ID, CustomerName AS Customer

FROM Customers;
Kết quả:


2. Tong table Customer hãy xuất ra cột CustomerName và các cột Address +

PostalCode + City + Country lấy tên là Address

MySQL syntax :
SELECT CustomerName , CONCAT(Address,', ',PostalCode,', ',City,', ',Country)
AS Address
FROM Customers;
Kết quả:


×