Sử dụng hàm của T-SQL trong truy vấn dữ liệu

Một phần của tài liệu Giao trinh SQL server 2008 (Trang 46 - 52)

SELECT @Gender AS [Giới Tính]

2.3.3 Sử dụng hàm của T-SQL trong truy vấn dữ liệu

Trang 47

Hàm AGV() : Hàm này trả về giá trị trung bình của các giá trị trong các trường dữ liệu được chỉ ra trong biểu thức.

Lưu ý: Hàm AVG chỉ được dùng với các trường có kiểu dữ liệu là số. Ngoài ra nó có khả năng loại bỏ giá trị NULL

Ví dụ:

USE Northwind

SELECTAVG(UnitPrice) AS AvgPrice

FROM Products

Hàm SUM() : Hàm này trả về tổng của tất cả các giá trị của trường dữ liệu trong biểu thức. Ngoài ra, bạn có thể dùng tới DISTINCT với SUM để tính tổng cho các giá trị duy nhất của trường dữ liệu trong biểu thức. Các giá trị NULL sẽ bị bỏ qua.

Lưu ý : SUM chỉ dùng cho các trường dữ liệu là kiểu số. Ví dụ:

USE Northwind

SELECTSUM(UnitPrice) AS [Tổng Sản Phẩm]

FROM Products

Hàm COUNT() : Hàm COUNT được sử dụng đếm các bản ghi được select trong chuỗi truy vấn. Hàm này có thể đếm được các giá trị NULL trong biểu thức. Nếu ta dùng nó với từ khóa DISTINCT, COUNT đếm được các giá trị duy nhất. Ngoài ra nó có thể được dùng với các trường số và ký tự.

Lưu ý: Các bạn có thể dùng ký tự * thay cho biểu thức trong hàm COUNT. Bằng cách này chúng ta có thể đếm được tất cả các bản ghi mà không cần quan tâm đến các trường dữ liệu.

Ví dụ: USE Northwind

Trang 48 Hàm SQUARE() : tính bình phương Ví dụ: DECLARE @A INT SET @A=5

SELECTSQUARE(@A)AS [@A Bình Phương]

Hàm ROUND() :

ROUND luôn luôn trả về một giá trị. Nếu chiều dài lớn hơn số lượng các chữ số trước dấu thập phân, ROUND trả về 0.

Round trả về một biểu thức số được làm tròn, bất kể loại dữ liệu, khi chiều dài là một số âm.

Ví dụ Kết quả

ROUND(748.58, -1) 750.00

ROUND(748.58, -2) 700.00

ROUND(748.58, -3) 1000.00

Ví dụ sau minh họa cách sử dụng Round

SELECTROUND(123.9994, 3), ROUND(123.9995, 3) GO

Ví dụ sau minh họa làm tròn và xấp xỉ SELECTROUND(123.4545, 2);

Trang 49 SELECTROUND(123.45,-2);

GO

Ví dụ sau sử dụng hai câu SELECT để chứng minh sự khác biệt giữa làm tròn và cắt xén. Câu lệnh đầu tiên có kết quả làm tròn. Câu lệnh thứ hai có kết quả cắt xén. Hàm CHAR() Ví dụ: USE Northwind; GO

SELECT FirstName +' '+ LastName,+ CHAR(13) + [Address] +CHAR(13)+ HomePhone

FROM Employees

WHERE EmployeeID = 1; GO

Trang 50

Hàm UPPER() , LOWER()

Với cú pháp chung bên dưới của các hàm UPPER, LOWER có kết quả trả về là một chuỗi sau khi đã được chuyển đổi các ký tự bên trong chuỗi thành chữ in (upper), hoặc chữ thường (lower).

Ví dụ : hàm UPPER

USE Northwind; GO

SELECTUPPER(FirstName)+ ' '+UPPER(LastName)AS Fullname

FROM Employees WHERE EmployeeID=1 Ví dụ : hàm LOWER USE Northwind; GO

SELECTLOWER(UPPER(FirstName))+' '+ LOWER(UPPER(LastName))AS Fullname

FROM Employees

WHERE EmployeeID=1

Hàm LEN()

Với cú pháp đơn giản của hàm LEN bên dưới có kết quả trả về là một số nguyên dương dùng để chỉ định chiều dài của một chuỗi chứa bao nhiêu ký tự.

Trang 51

Ví dụ:

USE Northwind; GO

SELECTLEN(FirstName) AS [Length],FirstName

FROM Employees

WHERE EmployeeID=1

Hàm LTRIM(), RTRIM()

Với cú pháp chung bên dưới của các hàm LTRIM, RTRIM có kết quả trả về là một chuỗi đã được cắt bỏ các khoảng trắng ở đầu chuỗi (ltrim) hoặc các khoảng trắng ở cuối chuỗi (rtrim).

Cú pháp : LTRIM (chuổi) RTRIM (Chuổi)

Ví dụ : hàm LTRIM

DECLARE @string_to_trim varchar(60)

SET @string_to_trim =' Five spaces are at the beginning of this string.'

SELECT'Here is the string without the leading spaces: '+

LTRIM(@string_to_trim)

Trang 52

Ví dụ: hàm RTRIM()

DECLARE @string_to_trim varchar(60);

SET @string_to_trim ='Four spaces are after the period in this sentence. ';

SELECT @string_to_trim + ' Next string.';

SELECTRTRIM(@string_to_trim)+' Next string.'; GO

Một phần của tài liệu Giao trinh SQL server 2008 (Trang 46 - 52)

Tải bản đầy đủ (PDF)

(161 trang)