Tag Archive: lập


Tổng hợp các thủ thuật lập trình SQL server

1. Sử dụng hàm Isnull

Giá trị là null trong SQL đôi khi khiến kết quả tính toán của ta không thể thực hiện được. Để đảm bảo giá trị truy vấn hoặc truyền vào biến luôn có giá trị (Không phải null) bạn sử dụng hàm isnull như ví dụ:

DECLARE @count int
SELECT @count=isnull(Count(*),0) FROM TB_News tn WHERE tn.idNews=10

Ở ví dụ này nếu bảng TB_News của bạn không có idNews=10 thì sẽ trả về null nhưng nếu bạn sử dụng isnull thì biến @count của bạn sẽ là 0. Nếu không sử dụng isnull bạn thường phải làm như sau:

	
DECLARE @count int
ELECT @count =Count(*) FROM TB_News tn WHERE tn.idNews=10
IF @count IS NULL SET @count =0

Bạn có thể so sánh 2 cách và lựa chọn

 

2. Cập nhật số lần xem bài viết

Khi người dùng truy cập website của bạn và chọn một bài viết để đọc bạn muốn theo dõi số lượt bài viết đó được xem bao nhiêu lần thì trong bảng TB_News (lưu các bài viết của bạn) cần có thêm trường NumRead (int), Khi bài viết được xem bạn cần viết thủ tục như sau để vừa truy vấn vừa cập nhật số lần xem

CREATE PROCEDURE sTB_News_SelectByID
@idNews int
AS
BEGIN
	--Cập nhật số lần xem trước khi hiển thị
	DECLARE @numread int
	SELECT @numread=isnull(tn.NumRead,0) FROM TB_News tn WHERE tn.idNews=@idNews
	UPDATE TB_News SET NumRead = @numread+1 WHERE idNews=@idNews
	-- Truy vấn hiển thị
	SELECT tn.idNews, tn.CateID, tn.LanguageCode, tn.UserName, tn.Title,
	       tn.Description, tn.Content, tn.Keyword, tn.Author, tn.CreateDate,tn.NumRead,
	       tn.Status
	  FROM TB_News tn WHERE tn.idNews=@idNews
END

Chú ý là các trường và tên bảng trong CSDL của bạn sẽ khác, Và ở ví dụ này mình sẽ cập nhật số lần xem trước khi truy vấn dữ liệu

3. Hàm Trim trong SQL

Trong SQL không có hàm trim nhưng lại có các hàm RTRIM và LTRIM vậy ta có thể kết hợp hai hàm này để có hàm Trim

Create Function fTrim
(
	@str nvarchar(500)
)
Returns nvarchar(500)
As
BEGIN
	Return RTRIM(LTRIM(@str))
End

Trước thông tin phía Trung Quốc thành lập cái gọi là “thành phố Tam Sa” với phạm vi quản lý bao gồm huyện đảo Trường Sa (tỉnh Khánh Hòa, Việt Nam) và huyện đảo Hoàng Sa (thành phố Đà Nẵng, Việt Nam), lãnh đạo hai tỉnh, thành phố trên đã lên tiếng phản đối quyết định trên của phía Trung Quốc.

Trường Sa, Hoàng Sa là bộ phận không tách rời của lãnh thổ Việt Nam.

Ông Nguyễn Chiến Thắng, Chủ tịch Ủy ban Nhân dân tỉnh Khánh Hòa khẳng định huyện đảo Trường Sa là một bộ phận không tách rời của lãnh thổ Việt Nam và trực thuộc quyền quản lý hành chính của tỉnh Khánh Hòa.

Ông Thắng nhấn mạnh chính quyền và nhân dân tỉnh Khánh Hòa hết sức bất bình trước việc Trung Quốc quyết định thành lập cái gọi là “thành phố Tam Sa” với phạm vi quản lý bao gồm huyện đảo Trường Sa. Quyết định này đã vi phạm nghiêm trọng chủ quyền của Việt Nam và không có giá trị về pháp lý.

“Chúng tôi kiên quyết phản đối và yêu cầu Trung Quốc hủy bỏ quyết định sai trái và phi pháp này, không có thêm hành động làm tổn hại đến quan hệ hai nước, tình hữu nghị giữa nhân dân hai nước và tình cảm của nhân dân Tỉnh Khánh Hòa.” – Chủ tịch Ủy ban Nhân dân tỉnh Khánh Hòa tuyên bố.

Ông Văn Hữu Chiến, Chủ tịch Ủy ban Nhân dân thành phố Đà Nẵng cũng khẳng định huyện đảo Hoàng Sa là một bộ phận không tách rời của lãnh thổ Việt Nam và trực thuộc quyền quản lý hành chính của thành phố Đà Nẵng.

Ông Chiến cho biết chính quyền và nhân dân thành phố Đà Nẵng hết sức bất bình trước việc Trung Quốc quyết định thành lập cái gọi là “thành phố Tam Sa” với phạm vi quản lý bao gồm huyện đảo Hoàng Sa.

Chủ tịch Ủy ban Nhân dân thành phố Đà Năng tuyên bố: “Quyết định này đã vi phạm nghiêm trọng chủ quyền của Việt Nam và không có giá trị về pháp lý. Chúng tôi kiên quyết phản đối và yêu cầu Trung Quốc hủy bỏ quyết định sai trái và phi pháp này, không có thêm hành động làm tổn hại đến quan hệ hai nước, tình hữu nghị giữa nhân dân hai nước và tình cảm của nhân dân thành phố Đà Nẵng”./.